<SEC-DOCUMENT>0001493152-22-013262.txt : 20220513
<SEC-HEADER>0001493152-22-013262.hdr.sgml : 20220513
<ACCEPTANCE-DATETIME>20220513140202
ACCESSION NUMBER:		0001493152-22-013262
CONFORMED SUBMISSION TYPE:	10-K/A
PUBLIC DOCUMENT COUNT:		105
CONFORMED PERIOD OF REPORT:	20211231
FILED AS OF DATE:		20220513
DATE AS OF CHANGE:		20220513

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			FLEXIBLE SOLUTIONS INTERNATIONAL INC
		CENTRAL INDEX KEY:			0001069394
		STANDARD INDUSTRIAL CLASSIFICATION:	MISCELLANEOUS CHEMICAL PRODUCTS [2890]
		IRS NUMBER:				911922863
		STATE OF INCORPORATION:			NV
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-K/A
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-31540
		FILM NUMBER:		22921764

	BUSINESS ADDRESS:	
		STREET 1:		2614 QUEENSWOOD DR
		CITY:			VICTORIA B C
		STATE:			A1
		ZIP:			V8N 1X5
		BUSINESS PHONE:		2504779969

	MAIL ADDRESS:	
		STREET 1:		2614 QUEENSWOOD DR
		CITY:			VICTORIA BC CANADA
		STATE:			A1
		ZIP:			V8N 1X5
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K/A
<SEQUENCE>1
<FILENAME>form10-ka.htm
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" 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:link="http://www.xbrl.org/2003/linkbase" xmlns:dei="http://xbrl.sec.gov/dei/2021q4" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31" xmlns:us-roles="http://fasb.org/us-roles/2021-01-31" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:country="http://xbrl.sec.gov/country/2021" xmlns:srt="http://fasb.org/srt/2021-01-31" xmlns:FSI="http://flexiblesolutions.com/20211231">
<head>
     <title></title>
<meta http-equiv="Content-Type" content="text/html" />
</head>
<!-- Field: Set; Name: xdx; ID: xdx_02A_US%2DGAAP%2D2021 -->
<!-- Field: Set; Name: xdx; ID: xdx_035_FSI_flexiblesolutions.com_20211231 -->
<!-- Field: Set; Name: xdx; ID: xdx_046_20210101_20211231 -->
<!-- Field: Set; Name: xdx; ID: xdx_059_edei%2D%2DEntityCentralIndexKey_0001069394 -->
<!-- Field: Set; Name: xdx; ID: xdx_055_edei%2D%2DAmendmentFlag_true -->
<!-- Field: Set; Name: xdx; ID: xdx_05A_edei%2D%2DDocumentFiscalPeriodFocus_FY -->
<!-- Field: Set; Name: xdx; ID: xdx_076_XDX_form10%2Dk.xdx -->
<!-- Field: Set; Name: xdx; ID: xdx_06B_USD_1_iso4217%2D%2DUSD -->
<!-- Field: Set; Name: xdx; ID: xdx_062_Shares_2_xbrli%2D%2Dshares -->
<!-- Field: Set; Name: xdx; ID: xdx_06D_USDPShares_3_iso4217%2D%2DUSD_xbrli%2D%2Dshares -->
<!-- Field: Set; Name: xdx; ID: xdx_069_Pure_4_xbrli%2D%2Dpure -->
<!-- Field: Set; Name: xdx; ID: xdx_06D_Segments_0_Segments -->
<!-- Field: Set; Name: xdx; ID: xdx_06E_CAD_0_iso4217%2D%2DCAD -->
<!-- Field: Set; Name: xdx; ID: xdx_06D_sqft_0_utr%2D%2Dsqft -->
<body style="font: 10pt Times New Roman, Times, Serif">
<div style="display: none">
<ix:header>
 <ix:hidden>
  <ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityCentralIndexKey">0001069394</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt:booleantrue" name="dei:AmendmentFlag">true</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:DocumentFiscalPeriodFocus">FY</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0026" name="dei:EntityIncorporationStateCountryCode">A0</ix:nonNumeric>
  <ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0274" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:GainLossOnSaleOfLand" contextRef="From2020-01-012020-12-31" id="xdx2ixbrl0278" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:PppLoanForgiveness" contextRef="From2020-01-012020-12-31" id="xdx2ixbrl0281" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:GainOnAcquisition" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0286" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0370" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:PaycheckProtectionProgramLoanForgiveness" contextRef="From2020-01-012020-12-31" id="xdx2ixbrl0377" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProceedsFromOtherDeposits" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0406" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0415" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0436" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:RepaymentsOfDebt" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0442" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0478" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0497" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0498" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0499" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0502" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0505" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0506" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0508" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0515" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0516" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0518" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0523" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0524" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0525" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0526" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2020-01-012020-12-31_us-gaap_ParentMember" id="xdx2ixbrl0527" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0531" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0533" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0534" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0536" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0549" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0550" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0551" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0554" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0557" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0558" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0560" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0567" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0568" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0570" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0575" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0576" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0577" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0578" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_ParentMember" id="xdx2ixbrl0579" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0583" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0585" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0586" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0588" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InventoryWorkInProcess" contextRef="AsOf2021-12-31" id="xdx2ixbrl0789" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember" id="xdx2ixbrl0854" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember" id="xdx2ixbrl0860" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_LandMember" id="xdx2ixbrl0864" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_us-gaap_DevelopedTechnologyRightsMember" id="xdx2ixbrl0932" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_us-gaap_LandMember" id="xdx2ixbrl0936" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2020-12-31_custom_EnpRealtyLLCMember55765312" id="xdx2ixbrl1102" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2021-12-31_custom_EnpRealtyLLCMember" id="xdx2ixbrl1104" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2019-12-31_custom_LygosIncMember" id="xdx2ixbrl1170" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProceedsFromLoans" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl1349" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:ProceedsFromLoanAcquiredWithAcquisition" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl1352" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:RepaymentsOfBankDebt" contextRef="From2020-01-012020-12-31" id="xdx2ixbrl1356" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_HarrisBankMember" id="xdx2ixbrl1366" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31_custom_HarrisBankMember" id="xdx2ixbrl1368" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_HarrisBankOneMember" id="xdx2ixbrl1370" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31_custom_HarrisBankOneMember" id="xdx2ixbrl1372" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember" id="xdx2ixbrl1374" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_FordMotorCreditCompanyMember" id="xdx2ixbrl1378" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31_custom_FordMotorCreditCompanyMember" id="xdx2ixbrl1380" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_PaycheckProtectionProgramMember" id="xdx2ixbrl1382" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_PaycheckProtectionProgramOneMember" id="xdx2ixbrl1386" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl1454" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInEnactedTaxRate" contextRef="From2020-01-012020-12-31" id="xdx2ixbrl1481" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsDerivativeInstruments" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" id="xdx2ixbrl1515" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:DeferredTaxAssetNet" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" id="xdx2ixbrl1527" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:DeferredTaxAssetNet" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" id="xdx2ixbrl1529" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1531" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1533" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1535" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets" contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1537" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsDerivativeInstruments" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1551" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:DeferredTaxAssetNotRecognized" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1555" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:DeferredTaxAssetNotRecognized" contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1557" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" id="xdx2ixbrl1758" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" id="xdx2ixbrl1817" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" id="xdx2ixbrl1847" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" id="xdx2ixbrl1889" unitRef="USD" xs:nil="true"></ix:nonFraction>
  </ix:hidden>
 <ix:references>
  <link:schemaRef xlink:href="fsi-20211231.xsd" xlink:type="simple" />
  </ix:references>
 <ix:resources>
    <xbrli:context id="From2021-01-01to2021-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-06-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-03-29">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-03-29</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_custom_CapitalInExcessOfParValueMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_us-gaap_ParentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_us-gaap_NoncontrollingInterestMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_CapitalInExcessOfParValueMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_ParentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_NoncontrollingInterestMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_us-gaap_ParentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_ParentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_CapitalInExcessOfParValueMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_ParentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_NoncontrollingInterestMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnpInvestmentsLlcAndEnpMendotaMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentsLlcAndEnpMendotaMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-01-012018-12-31_custom_EnpnvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-01-01</xbrli:startDate>
        <xbrli:endDate>2018-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-01-012018-12-31_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-01-01</xbrli:startDate>
        <xbrli:endDate>2018-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember_custom_UnrelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:UnrelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-01-01</xbrli:startDate>
        <xbrli:endDate>2018-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_ShippingAndHandlingMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ShippingAndHandlingMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_us-gaap_ShippingAndHandlingMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ShippingAndHandlingMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_ThreePrimaryCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_ThreePrimaryCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_ComputerEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_FurnitureAndFixturesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_MachineryAndEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_OfficeEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_BoatMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BoatMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_BuildingAndImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BuildingAndImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_TrailerMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:TrailerMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_AutomobilesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_PatentsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_TechnologyEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_LeaseholdImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_CustomerRelationshipsENPInvestmentsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:CustomerRelationshipsENPInvestmentsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_SoftwareENPInvestmentsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:SoftwareENPInvestmentsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_BuildingAndImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BuildingAndImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_AutomobilesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_ComputerEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_FurnitureAndFixturesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_OfficeEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TrailerMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:TrailerMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_BoatMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BoatMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_LandMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_BuildingAndImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BuildingAndImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_AutomobilesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_ComputerEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_FurnitureAndFixturesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_OfficeEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_MachineryAndEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_TrailerMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:TrailerMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_BoatMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BoatMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_LeaseholdImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_DevelopedTechnologyRightsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_LandMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-01-12">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-01-12</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_EquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_EquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_EquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_us-gaap_EquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_CADMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">FSI:CADMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_CADMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">FSI:CADMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_custom_EnPInvestmentsCorporationLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EnPInvestmentsCorporationLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_EnPInvestmentsCorporationLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnPInvestmentsCorporationLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_EnPInvestmentsCorporationLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_CustomerRelationshipsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_ComputerSoftwareIntangibleAssetMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:ComputerSoftwareIntangibleAssetMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:FiniteLivedIntangibleAssetsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2018-12-31_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2018-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-12-012018-12-31_custom_AppliedHoldingCorpMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:AppliedHoldingCorpMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-12-01</xbrli:startDate>
        <xbrli:endDate>2018-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-12-012018-12-31_srt_MaximumMember_custom_AppliedHoldingCorpMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:AppliedHoldingCorpMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-12-01</xbrli:startDate>
        <xbrli:endDate>2018-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-12-012018-12-31_custom_TrioOpportunityCorpMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:TrioOpportunityCorpMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-12-01</xbrli:startDate>
        <xbrli:endDate>2018-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-12-012018-12-31_us-gaap_CommonClassBMember_custom_TrioOpportunityCorpMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:TrioOpportunityCorpMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-12-01</xbrli:startDate>
        <xbrli:endDate>2018-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2018-12-31_custom_TrioOpportunityCorpMember_us-gaap_CommonClassBMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:TrioOpportunityCorpMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2018-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2019-01-012019-01-31_custom_FloridaBasedLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2019-01-01</xbrli:startDate>
        <xbrli:endDate>2019-01-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-01-31_custom_FloridaBasedLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-01-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_FloridaBasedLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_FloridaBasedLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_FloridaBasedLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_FloridaBasedLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-12-012020-12-31_custom_LygosIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-12-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_LygosIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_EnpRealtyLLCMember55765312">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_custom_FloridaBasedLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_custom_LygosIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_LygosIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_LygosIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_LygosIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2018-09-30_custom_NewAgreementMember_custom_HarrisBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2018-09-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-09-012018-09-30_custom_NewAgreementMember_custom_HarrisBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-09-01</xbrli:startDate>
        <xbrli:endDate>2018-09-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-08-31_custom_NewAgreementMember_custom_MidlandStatesBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-08-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-08-012021-08-30_custom_MidlandStatesBankMember_custom_NewAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-08-01</xbrli:startDate>
        <xbrli:endDate>2021-08-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-08-31_srt_MaximumMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-08-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-03-31_custom_MidlandStatesBankMember_custom_NewAgreementMember_us-gaap_SubsequentEventMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-10-012021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-10-01</xbrli:startDate>
        <xbrli:endDate>2021-10-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-10-012021-10-31_custom_MidlandStatesBankMember_custom_NewAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-10-01</xbrli:startDate>
        <xbrli:endDate>2021-10-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2018-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-10-032018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-10-03</xbrli:startDate>
        <xbrli:endDate>2018-10-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2018-10-31_custom_TermLoanMember_custom_EnpInvestmentsLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2018-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-04-30_custom_HarrisBankMember_custom_NanoChemSolutionIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-04-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-04-30_custom_HarrisBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-04-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_HarrisBankMember_custom_NanoChemSolutionIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2018-01-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-01-012018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-01-01</xbrli:startDate>
        <xbrli:endDate>2018-01-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2016-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2016-03-012016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2016-03-01</xbrli:startDate>
        <xbrli:endDate>2016-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-04-012020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-04-01</xbrli:startDate>
        <xbrli:endDate>2020-04-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-04-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-04-012020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-04-01</xbrli:startDate>
        <xbrli:endDate>2020-04-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-04-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-04-30_custom_HarrisBankMember_custom_EnpInvestmentsLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-04-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-10-012020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-10-01</xbrli:startDate>
        <xbrli:endDate>2020-10-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-10-31_custom_TermLoanMember_custom_EnpInvestmentsLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_NanoChemSolutionsIncMember_custom_TermLoanMember_custom_MidlandBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_NanoChemSolutionsIncMember_custom_TermLoanMember_custom_MidlandBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-10-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-10-31_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-01-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-01-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-01-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-01-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-01-31_custom_StockYardsBankTrustMember_us-gaap_PrimeRateMember_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-01-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-01-31_srt_FederalHomeLoanBankOfCincinnatiMember_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis">srt:FederalHomeLoanBankOfCincinnatiMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-01-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-01-31_srt_FederalHomeLoanBankOfCincinnatiMember_custom_StockYardsBankTrustMember_us-gaap_PrimeRateMember_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis">srt:FederalHomeLoanBankOfCincinnatiMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-01-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnpRealtyLLCMember_custom_StockYardsBankTrustMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_custom_StockYardsBankTrustMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_PromissoryNoteOneWithMidlandBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:PromissoryNoteOneWithMidlandBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_PromissoryNoteWithMidlandBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:PromissoryNoteWithMidlandBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:PromissoryNoteOneWithMidlandBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:PromissoryNoteWithMidlandBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-01-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_HarrisBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_HarrisBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_HarrisBankOneMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_HarrisBankOneMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MidlandStatesBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_MidlandStatesBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_FordMotorCreditCompanyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_FordMotorCreditCompanyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_PaycheckProtectionProgramMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_PaycheckProtectionProgramMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_PaycheckProtectionProgramOneMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_PaycheckProtectionProgramOneMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MidlandStatesBankOneMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_MidlandStatesBankOneMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MidlandStatesBankTwoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankTwoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_MidlandStatesBankTwoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankTwoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_StockYardsBankTrustMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_StockYardsBankTrustMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2018-10-31_custom_EnpInvestmentsLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2018-10-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-10-012018-10-31_custom_EnpInvestmentsLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-10-01</xbrli:startDate>
        <xbrli:endDate>2018-10-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-10-012018-10-31_srt_ParentCompanyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">srt:ParentCompanyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2018-10-01</xbrli:startDate>
        <xbrli:endDate>2018-10-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2019-06-012019-06-30_srt_ParentCompanyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">srt:ParentCompanyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2019-06-01</xbrli:startDate>
        <xbrli:endDate>2019-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-04-012020-04-30_srt_ParentCompanyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">srt:ParentCompanyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-04-01</xbrli:startDate>
        <xbrli:endDate>2020-04-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:CanadaRevenueAgencyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:CanadaRevenueAgencyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:InternalRevenueServiceIRSMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:InternalRevenueServiceIRSMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TwoThousandTwentyNineTaxYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandTwentyNineTaxYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TwoThousandThirtyTaxYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyTaxYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TwoThousandThirtyOneTaxYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyOneTaxYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TwoThousandThirtySevenTaxYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtySevenTaxYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TwoThousandThirtyEightTaxYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyEightTaxYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TwoThousandThirtyNineTaxYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyNineTaxYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TwoThousandFortyTaxYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandFortyTaxYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TwoThousandFortyOneTaxYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandFortyOneTaxYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_ConsultantsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_ConsultantsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EmployeesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:EmployeesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EmployeesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:EmployeesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_CanadaRevenueAgencyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:CanadaRevenueAgencyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_us-gaap_CanadaRevenueAgencyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:CanadaRevenueAgencyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EmployeesStockOptionMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">FSI:EmployeesStockOptionMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EmployeesStockOptionMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">FSI:EmployeesStockOptionMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_ConsultantsStockOptionsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">FSI:ConsultantsStockOptionsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_ConsultantsStockOptionsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">FSI:ConsultantsStockOptionsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_EnpnvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnpInvestmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EnpInvestmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_EnpInvestmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_EnpInvestmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:EWCPMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:BCPAMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:EWCPMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:BCPAMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_country_CA">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_country_CA">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_UnitedStatesandAbroadMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">FSI:UnitedStatesandAbroadMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_UnitedStatesandAbroadMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">FSI:UnitedStatesandAbroadMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_country_CA">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_country_CA">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_country_US">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_country_US">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_ThreeCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-01-012020-12-31_custom_ThreeCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-01-01</xbrli:startDate>
        <xbrli:endDate>2020-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-03-29_custom_EmployeeMember_us-gaap_SubsequentEventMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:EmployeeMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-03-29</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-03-29_custom_EmployeeMember_us-gaap_SubsequentEventMember_custom_UponExerciseofStockOptionsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:EmployeeMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:UponExerciseofStockOptionsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-03-29</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>
    <xbrli:unit id="Pure">
      <xbrli:measure>xbrli:pure</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="Segments">
      <xbrli:measure>FSI:Segments</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="CAD">
      <xbrli:measure>iso4217:CAD</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="sqft">
      <xbrli:measure>utr:sqft</xbrli:measure>
    </xbrli:unit>
  </ix:resources>
 </ix:header>
</div>


<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"></p>

<!-- Field: Rule-Page --><div style="width: 100%"><div style="border-top: Black 4pt solid; border-bottom: Black 1.5pt solid; font-size: 1pt">&#160;</div></div><!-- Field: /Rule-Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt; text-transform: uppercase"><b>united
states</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b>SECURITIES
AND EXCHANGE COMMISSION</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 12pt"><b>WASHINGTON,
D.C. 20549</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b>FORM
<span id="xdx_90E_edei--DocumentType_c20210101__20211231_z8i6hHJeLZ52"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:DocumentType">10-K/A</ix:nonNumeric></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Mark
One)</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"><span id="xdx_901_edei--DocumentAnnualReport_c20210101__20211231_zMJQ6VLyuTIi"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt:booleantrue" name="dei:DocumentAnnualReport">&#9746;</ix:nonNumeric></span>    </td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ANNUAL
    REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
    the Fiscal Year Ended <span id="xdx_900_edei--DocumentPeriodEndDate_c20210101__20211231_zcNJY0QZ9cI8" title="Document Period End Date"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt:datemonthdayyearen" name="dei:DocumentPeriodEndDate"><span id="xdx_903_edei--CurrentFiscalYearEndDate_c20210101__20211231_zbvnHEaTbBU1" title="Current Fiscal Year End Date"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt:datemonthdayen" name="dei:CurrentFiscalYearEndDate">December 31</ix:nonNumeric></span>, <span id="xdx_90F_edei--DocumentFiscalYearFocus_c20210101__20211231_zHEYVWbU6IJ9" title="Document Fiscal Year Focus"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:DocumentFiscalYearFocus">2021</ix:nonNumeric></span></ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">OR</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span id="xdx_907_edei--DocumentTransitionReport_c20210101__20211231_zUpOikXpcbGc"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt:booleanfalse" name="dei:DocumentTransitionReport">&#9744;</ix:nonNumeric></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">TRANSITION
    REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Commission
File No. <span id="xdx_904_edei--EntityFileNumber_c20210101__20211231_zZaVNI2yqLuj" title="Entity File Number"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityFileNumber">001-31540</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b><span style="text-decoration: underline"><span id="xdx_904_edei--EntityRegistrantName_c20210101__20211231_zgnGhlOqOdH4"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityRegistrantName">FLEXIBLE
SOLUTIONS INTERNATIONAL, INC.</ix:nonNumeric></span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Exact
name of registrant as specified in its charter)</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 49%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span><span id="xdx_907_edei--EntityIncorporationStateCountryCode_dxL_c20210101__20211231_zhOmGuRds5Ee" title="::XDX::A0"><span style="-sec-ix-hidden: xdx2ixbrl0026">Alberta</span></span></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 49%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_edei--EntityTaxIdentificationNumber_c20210101__20211231_zO18jprEmEOa"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityTaxIdentificationNumber">71-1630889</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(State
    or other jurisdiction of incorporation or organization)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Employer
    Identification No.)</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_edei--EntityAddressAddressLine1_c20210101__20211231_zcSSm7CY98c7"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityAddressAddressLine1">6001
    54 Ave.</ix:nonNumeric></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_901_edei--EntityAddressCityOrTown_c20210101__20211231_zP64G9gyKR3c"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityAddressCityOrTown">Taber</ix:nonNumeric></span>,
    Alberta, <span id="xdx_90B_edei--EntityAddressCountry_c20210101__20211231_zU2cNdr46x7"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt-sec:countrynameen" name="dei:EntityAddressCountry">Canada</ix:nonNumeric></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_905_edei--EntityAddressPostalZipCode_c20210101__20211231_zq3Uua4jQqni"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityAddressPostalZipCode">T1G
    1X4</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Address
    of Principal Executive Office)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Zip
    Code</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Registrant&#8217;s
telephone number, including Area Code: <span id="xdx_906_edei--CityAreaCode_c20210101__20211231_zXKg53IufdM9"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:CityAreaCode">(403)</ix:nonNumeric></span> <span id="xdx_90B_edei--LocalPhoneNumber_c20210101__20211231_z0gveg6DDwp9"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:LocalPhoneNumber">223-2995</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Securities
registered pursuant to Section 12(b) of the Act:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: left; width: 38%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Title
    of each class</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: left; width: 18%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trading
    Symbol</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: left; width: 40%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Name
    of each exchange on which registered</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_edei--Security12bTitle_c20210101__20211231_zqTmFmebKUAa"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:Security12bTitle">Common
    Stock, $0.001 par value</ix:nonNumeric></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_907_edei--TradingSymbol_c20210101__20211231_zfe4sftuQn3g"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:TradingSymbol">FSI</ix:nonNumeric></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90E_edei--SecurityExchangeName_c20210101__20211231_zgZeH9luyOq9"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName">NYSE</ix:nonNumeric></span>
    American</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Securities
registered pursuant to Section 12(g) of the Act: None</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Yes
&#9744; <span id="xdx_90D_edei--EntityWellKnownSeasonedIssuer_c20210101__20211231_z7PNEm6dxUj6"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityWellKnownSeasonedIssuer">No</ix:nonNumeric></span> &#9746;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Yes
&#9744; <span id="xdx_909_edei--EntityVoluntaryFilers_c20210101__20211231_zz797WfNxQQc"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityVoluntaryFilers">No</ix:nonNumeric></span> &#9746;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant (1) has filed all reports to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934
during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject
to such filing requirements for the past 90 days. <span id="xdx_90F_edei--EntityCurrentReportingStatus_c20210101__20211231_z0nHuxEIihui" title="Entity Current Reporting Status"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityCurrentReportingStatus">Yes</ix:nonNumeric></span> &#9746; No &#9744;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted and posted pursuant
to Rule 405 of Regulation S-T (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant
was required to submit and post such files). <span id="xdx_907_edei--EntityInteractiveDataCurrent_c20210101__20211231_z3ctkJfQpLk"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:EntityInteractiveDataCurrent">Yes</ix:nonNumeric></span> &#9746; No &#9744;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark if disclosure of delinquent filers pursuant to Item 405 of Regulation S-K is not contained herein, and will not be contained,
to the best of Registrant&#8217;s knowledge, in definitive proxy or information statements incorporated by reference in Part III of this
Form 10-K or any amendment to this Form 10-K. &#9746;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, or a smaller reporting
company or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer&#8221;,
&#8220;smaller reporting company&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 50%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Large
    accelerated filer &#9744;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 50%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accelerated
    filer &#9744;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_907_edei--EntityFilerCategory_c20210101__20211231_zM1W7l2sjqzi"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt-sec:entityfilercategoryen" name="dei:EntityFilerCategory">Non-accelerated
    filer</ix:nonNumeric></span> &#9746;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smaller
    reporting company <span id="xdx_909_edei--EntitySmallBusiness_c20210101__20211231_z7UkKlIEThKf"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt:booleantrue" name="dei:EntitySmallBusiness">&#9746;</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Emerging
    growth company <span id="xdx_90F_edei--EntityEmergingGrowthCompany_c20210101__20211231_z91neqpl0xKd"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt:booleanfalse" name="dei:EntityEmergingGrowthCompany">&#9744;</ix:nonNumeric></span></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">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 13(a) of the Exchange Act. &#9744;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness
of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act by the registered public accounting firm
that prepared or issued its audit report. &#9744; Yes &#9746; <span id="xdx_904_edei--IcfrAuditorAttestationFlag_c20210101__20211231_zBRg4eRop8ge"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt:booleanfalse" name="dei:IcfrAuditorAttestationFlag">No</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act): &#9744; Yes &#9746; <span id="xdx_901_edei--EntityShellCompany_c20210101__20211231_zhqpmD5yWjl8"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt:booleanfalse" name="dei:EntityShellCompany">No</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2021 the aggregate market value of the Company&#8217;s common stock held by non-affiliates was $<span id="xdx_902_edei--EntityPublicFloat_iI_c20210630_zYQw4WeXWcp2" title="Entity Public Float"><ix:nonFraction name="dei:EntityPublicFloat" contextRef="AsOf2021-06-30" format="ixt:numdotdecimal" decimals="0" unitRef="USD">30,491,533</ix:nonFraction></span> based on the closing
price for shares of the Company&#8217;s common stock on the NYSE American for that date.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of March 29, 2022, the Company had <span id="xdx_908_edei--EntityCommonStockSharesOutstanding_iI_pid_c20220329_zE2d4qkQQq79"><ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" contextRef="AsOf2022-03-29" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,375,746</ix:nonFraction>
</span></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">issued and outstanding shares of common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Documents
incorporated by reference: None</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<!-- Field: Rule-Page --><div style="width: 100%"><div style="border-top: Black 1.5pt solid; border-bottom: Black 4pt solid; font-size: 1pt">&#160;</div></div><!-- Field: /Rule-Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%">&#160;</td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: center"><b>EXPLANATORY NOTE</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: center"><b>&#160;</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; text-indent: 0.5in; margin-right: 0; margin-left: 0"><span id="xdx_901_edei--AmendmentDescription_c20210101__20211231_zz8IbhEWo18k"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:AmendmentDescription">The purpose of the amendment
is to correct Exhibit 23.1</ix:nonNumeric></span></p>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<!-- Field: Page; Sequence: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%">&#160;</td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CAUTIONARY
NOTE REGARDING FORWARD-LOOKING STATEMENTS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">This
Annual Report on Form 10-K for the year ended December 31, 2021 (&#8220;Annual Report&#8221;), including the Audited Consolidated Financial
Statements, contains forward-looking statements within the meaning of the Private Securities Litigation Reform Act of 1995. Forward-looking
statements include, without limitation, those statements relating to development of new products, our financial condition and our ability
to increase distribution of our products. Forward-looking statements can be identified by the use of forward-looking terminology, such
as &#8220;may,&#8221; &#8220;will,&#8221; &#8220;should,&#8221; &#8220;expect,&#8221; &#8220;anticipate,&#8221; &#8220;estimate,&#8221;
&#8220;continue,&#8221; &#8220;plans,&#8221; &#8220;intends,&#8221; or other similar terminology. These forward-looking statements are
not guarantees of future performance and involve risks, uncertainties and assumptions that are difficult to predict. Therefore, actual
outcomes and results may differ materially from what is anticipated or forecasted in these forward-looking statements due to numerous
factors, including, but not limited to, our ability to generate or obtain sufficient working capital to continue our operations, changes
in demand for our products, the timing of customer orders and deliveries and the impact of competitive products and pricing. In addition,
such statements could be affected by general industry and market conditions and growth rates, and general domestic and international
economic conditions.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Although
we believe that the expectations reflected in these forward-looking statements are reasonable and achievable, such statements involve
risks and uncertainties and no assurance can be given that our actual results will be consistent with these forward-looking statements.
Except as otherwise required by applicable securities laws, we undertake no obligation to publicly update or revise any forward-looking
statements, whether as a result of new information, future events, changed circumstances or any other reason, after the date this Annual
Report is filed with the Securities and Exchange Commission.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 3 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%">&#160;</td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>PART
I</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    1.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Description
    of Business</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
were incorporated as Flexible Solutions Ltd., a British Columbia corporation on January 26, 1991. On May 12, 1998, we merged Flexible
Solutions Ltd. into Flexible Solutions International, Inc., a Nevada corporation. In connection with this merger, we issued 7,000,000
shares of common stock to the former shareholders of Flexible Solutions Ltd. in exchange for all of the outstanding shares of Flexible
Solutions Ltd.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
June 2004 we purchased 52 U.S. and 139 International patents, as well as a 56,780 sq. ft. manufacturing plant near Chicago, Illinois
from the bankruptcy estate of Donlar Corporation (&#8220;Donlar&#8221;) for $6.15 million. The IP we acquired from Donlar relates to
water-soluble chemicals (&#8220;TPAs&#8221;) which prevent corrosion and scaling in water pipes used in the petroleum, chemical, utility
and mining industries. TPAs are also used to enhance fertilizers and improve crop yields and as additives for household laundry detergents,
consumer care products and pesticides. These assets are held in our wholly owned NanoChem Solutions Inc. subsidiary which has become
our largest revenue generator.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
October 2018, we purchased 65% of ENP Investments LLC, a <span style="background-color: white">manufacturing and distribution company
active in the areas of golf, turf and ornamental agriculture products.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
January 2019, we <span style="background-color: white">purchased 50% of a profitable limited liability company engaged in international
sales of fertilizer additives. This purchase is accounted for as an equity accounted investment.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">In
2019, we changed our corporate domicile from Nevada to Alberta, Canada.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">In
January 2020, ENP Realty, LLC became a wholly owned subsidiary of ENP Investments, LLC and was renamed to ENP Mendota, LLC.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
operate through a number of wholly-owned subsidiaries which are mentioned in Note 1 to the consolidated financial statements included
as part of this report. Unless otherwise indicated, all references to our business include the operations of these subsidiaries.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
website is www.flexiblesolutions.com</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Our
Products</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Thermal
Polyaspartates (&#8220;TPAs&#8221;)</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
manufacture TPAs in our Peru, Illinois plant using a thermal polymerizing process. The multiple variants produced are optimized for individual
market verticals and sold for end use or through distribution.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 4; Options: NewSection; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->2<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">TPAs
for Oilfields</span>. TPAs are used to reduce scale and corrosion in various &#8220;topside&#8221; water systems. They are used in place
of traditional phosphonate and other products when biodegradability is required by environmental regulations. We have the ability to
custom manufacture TPAs depending on the specific water conditions associated with any oil well. TPAs are also used in fracking fluids
to reduce the toxicity while maintaining equal function.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">TPAs
for the Agricultural Industry</span>. TPAs have the ability to reduce fertilizer crystallization before, during and after application and
can also delay crystal formation between fertilizer and minerals present in the soil. Once crystallized, fertilizer and soil minerals
are not able to provide plant nourishment. As a result, in select conditions the use of TPAs either blended with fertilizer or applied
directly to crops can increase yields significantly. TPAs are designated for crop nutrient management programs and should not be confused
with crop protection and pesticides or other agricultural chemical applications. Depending on the application, TPA products are marketed
under a variety of brands including EX-10TM, AmisorbTM, LYNXTM, MAGNETTM, AmGroTM and VOLTTM. Markets of significance include corn, wheat,
soybeans, rice, potatoes, sugar beets, cotton, tomatoes, almonds and other high value per acre crops.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">TPAs
for Irrigation</span>. The crystallization prevention ability of TPAs can also be useful in select irrigation conditions. By reducing calcium
carbonate scale propagation, TPAs can prevent early plugging of drip irrigation ports, reduce maintenance costs and lengthen the life
of equipment. TPAs compete with acid type scale removers, but have the advantage of a positive yield effect on the plant, as well as
an easier deployment formulation with liquid fertilizers when used as part of a &#8220;fertigation&#8221; program. Our TPAs for drip
irrigation scale prevention are marketed and sold through the same channels as TPAs used by the agricultural industry.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">TPAs
in Cleaning Products</span>. TPA can replace polyacrylates in cleaning products which is valuable because TPA is biodegradable while polyacrylates
are not. In a cleaning product formulation, TPA prevents the re-deposition of dirt onto the surfaces to be cleaned allowing dirt to be
rinsed away.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Nitrogen
conservation products for agriculture.</span> We manufacture and sell two conservation products and mixtures used for slowing nitrogen loss
from fields. One significant loss route for nitrogen fertilizer is enzymatic degradation by bacteria naturally present in soil. Our product,
SUN 27TM inhibits the bacterial action and keeps the nitrogen fertilizer available for plant growth. The second significant nitrogen
loss mechanism is de-nitrification. This is also caused by bacterial activity in soil resulting in oxygen being stripped from the fertilizer
leaving nitrogen gas. The gas can&#8217;t be used by the plants and escapes into the atmosphere. Our N Savr 30TM product uses the most
effective active ingredients available to combat this cause of fertilizer loss. We sell SUN 27TM and N Savr 30TM through distributors
in North and South America under our trade names and under private labels.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>HEATSAVR&#174;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
studies indicate that approximately 70% of the energy lost from a swimming pool occurs through water evaporation. HEATSAVR&#174; is a
chemical product for use in swimming pools and spas that forms a thin, transparent layer on the water&#8217;s surface. The transparent
layer slows the evaporation of water, allowing the water to retain a higher temperature for a longer period of time and thereby reducing
the energy required to maintain the desired temperature of the water. We have received reports from our commercial customers documenting
energy savings of between $2,400 and $6,000 per year when using HEATSAVR&#174;.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
outdoor pools, the HEATSAVR&#174; also provides convenience compared to pool blankets. It is often inconvenient to use conventional pool
blankets since a pool blanket must be removed and stored before the pool can be used. Pool blankets do not provide any energy savings
when not on the pool. Conversely, HEATSAVR&#174; eliminates the need to install, remove and store the blanket and works 24 hours a day.
In addition, the use of HEATSAVR&#174; in an indoor pool results in even greater energy savings since indoor pool locations use energy
not only to heat the pool water, but also to air condition the pool environment. By slowing the transfer of heat and water vapor from
the pool to the atmosphere of the pool enclosure, less energy is required to maintain a pool at the desired temperature and there is
a reduced load on the air-conditioning system. We also manufacture and sell products which automatically dispense HEATSAVR&#174; into
commercial size swimming pools or spas at the rate of one ounce per 400 sq. ft. of water surface per day.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>


<!-- Field: Page; Sequence: 5; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->3<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>WATERSAVR&#174;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">This
product utilizes a patented variation of our HEATSAVR technology to reduce water evaporation in reservoirs, potable water storage tanks,
livestock watering ponds, aqueducts, canals and irrigation ditches. WATERSAVR may also be used for lawn and turf care and potted and
bedding plants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">WATERSAVR&#174;
is sold in granulated form and can be applied by hand, by fully automated scheduled metering, or by an automatic dispenser.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Tests
have indicated that WATERSAVR&#174;:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Reduces
    daily water evaporation as much as 54%;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Reduces
    monthly water evaporation as much as 37%;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Is
    odorless;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Has
    no effect on invertebrates or vertebrates;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Has
    no anticipated effect on any current drinking water treatment processes; and</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Is
    biodegradable.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have one part-time employee involved in the sales and marketing of WATERSAVR&#174;.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Principal
Customers</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below presents our revenue resulting from purchases by our major customers for the periods presented.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; text-align: center">Year Ended December 31,</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 68%; text-align: left">Company A</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">1,139,041</td><td style="width: 1%; text-align: left">*</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">3,142,458</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Company B</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">4,877,690</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">4,094,622</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Company C</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">7,982,281</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">7,476,047</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Company D</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">4,057,976</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1,528,092</td><td style="text-align: left">*</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">*not a top three major customer for the year</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Customers
with balances greater than 10% of our receivable balances as of each of the fiscal year ends presented are shown in the following table:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; text-align: center">Year Ended December 31,</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 68%; text-align: left">Company B</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">2,215,119</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">2,056,631</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Company C</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2,202,345</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,593,272</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Competition</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>TPAs:
</i>Our TPA products have direct competition with Lanxess AG (spun out of Bayer AG) (&#8220;Lanxess&#8221;), a German manufacturer of
TPAs, which uses a patented process different from ours. We have cross-licensed each other&#8217;s processes and either company can use
either process for the term of the patents involved. We believe that Lanxess has approximately the same production capacity and product
costs as we do. We believe that we can compete effectively with Lanxess by offering excellent customer service in oilfield sales, superior
distributor support in the agricultural marketplace and flexibility due to our relative size. In addition, we intend to continue to seek
market niches that are not the primary targets of Lanxess. There are other competitors based in Asia.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 6; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->4<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
TPA products face indirect competition from other chemicals in every market in which we are active. For purposes of oilfield scale prevention,
phosphonates, phosphates and molibdonates provide the same effect. For crop enhancement, increased fertilizer levels can serve as a substitute
for TPAs. In irrigation scale control, acid washes are our prime competitor. Notwithstanding the above, we believe our competitive advantages
include:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in">&#9679;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Biodegradability
    compared to competing oil field chemicals;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost-effectiveness
    for crop enhancement compared to increased fertilizer use; and</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Environmental
    considerations, ease of formulation and increased crop yield opportunities in irrigation scale markets.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>HEATSAVR&#174;:
</i>Although we are aware of two other companies that manufacture products that compete with HEATSAVR&#174;, we believe our products are
more effective and safer. We maintain fair pricing equal to or lower than our competitors and protect our intellectual property carefully.
Our products are expected to maintain market share in the competitive pool market. HEATSAVR&#174; also competes with plastic pool blanket
products. However, we believe that HEATSAVR&#174; is more effective and convenient than pool blankets.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>WATERSAVR&#174;:
</i>WATERSAVR&#174; competes with solid and floating covers. We believe our WATERSAVR&#174; product is superior for the following reasons:
it is less expensive, requires little capital expenditure to deploy and can be started and stopped as water scarcity escalates or declines.
As water conservation is an important priority throughout the world, numerous researchers are working to develop solutions that may compete
with, or be superior to, WATERSAVR.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Manufacturing</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
HEATSAVR&#174; products and dispensers are made from chemicals, plastics and other materials and parts that are readily available from
multiple suppliers. We have never experienced any shortage in the availability of raw materials and parts for these products and we do
not have any long term supply contracts for any of these items. We have these products made by outside parties without long term contracts.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
WATERSAVR&#174; products are manufactured by a third party. We are not required to purchase any minimum quantity of this product.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
56,780 sq. ft. facility in Peru, Illinois manufactures our TPA products. Raw materials for TPA production are sourced from various manufacturers
throughout the world and we believe they are available in sufficient quantities for any increase in sales. Raw materials are, however,
derived from crude oil and are subject to price fluctuations related to world oil prices.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
January 2020, ENP Investments, LLC acquired a 100% interest in ENP Realty, LLC and the 14,000 sq. ft manufacturing facility in Mendota,
Illinois owned by this entity.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Government
Regulations</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>TPAs:
</i>In the industrial oil field and agricultural markets, we have received government approval for all TPAs currently sold.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Nitrogen
conservation product: </i>We have obtained all government approvals for the markets in which we sell these products.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>HEATSAVR&#174;:
</i>Chemical products for use in swimming pools are covered by a variety of governmental regulations in all countries where we sell these
products. These regulations cover packaging, labeling, and product safety. We believe our products are in compliance with these regulations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>WATERSAVR&#174;:
</i>Our WATERSAVR&#174; product is subject to regulation in most countries, particularly for agricultural and drinking water uses. We
do not anticipate that governmental regulations will be an impediment to marketing WATERSAVR&#174; because the components in WATERSAVR&#174;
have historically been used in agriculture for many years for other purposes. Nevertheless, we may require county or state approval on
a case by case basis to sell WATERSAVR&#174; in the United States for agricultural and drinking water uses. We have received National
Sanitation Foundation approval for the use of WATERSAVR&#174; in drinking water in the United States.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>


<!-- Field: Page; Sequence: 7; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->5<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Proprietary
Rights</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
success is dependent, in part, upon our proprietary technology. We rely on a combination of patent, copyright, trademarks, trade secrets
and nondisclosure agreements to protect our proprietary technology. We hold several US patents with various expiry dates. We have applied
for additional patents in new areas of invention and may extend these patents, if granted to other jurisdictions. There can be no assurance
that our patent applications will be granted or that any issued patent will be upheld as valid or prevent the development of competitive
products, which may be equivalent to or superior to our products. We have not received any claims alleging infringement of the intellectual
property rights of others, but there can be no assurance that we may not be subject to such claims in the future.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Research
and Development</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
spent $116,411 during the year ended December 31, 2021 and $81,422 during year ended December 31, 2020 on research and development. This
work relates primarily to the development of our water and energy conservation products, as well as new research in connection with our
TPA products.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Employees</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2021, we had 39 employees, including one officer, 13 sales and customer support personnel, and 25 manufacturing personnel.
None of our employees is represented by a labor union and we have not experienced any work stoppages to date.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
1A. Risk Factors</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">This
Form 10-K contains forward-looking information based on our current expectations. Because our actual results may differ materially from
any forward-looking statements made by us, this section includes a discussion of important factors that could affect our future operations
and result in a decline in the market price of our common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
have in the past incurred significant operating losses and may not sustain profitability in the future.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have in the past experienced operating losses and negative cash flow from operations. If our revenues decline, our results of operations
and liquidity may be materially and adversely affected. If we experience slower than anticipated revenue growth or if our operating expenses
exceed our expectations, we may not be profitable. We may not remain profitable in future periods.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Fluctuations
in our operating results may cause our stock price to decline.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Given
the nature of the markets in which we operate, we cannot reliably predict future revenues and profitability. Changes in competitive,
market and economic conditions may cause us to adjust our operations. A high proportion of our costs are fixed, due in part to our sales,
research and development and manufacturing costs. Thus, small declines in revenue could disproportionately affect our operating results.
Factors that may affect our operating results and the market price of our common stock include:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">demand
    for and market acceptance of our products;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">competitive
    pressures resulting in lower selling prices;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">adverse
    changes in the level of economic activity in regions in which we do business;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">adverse
    changes in the oil and gas industry on which we are particularly dependent;</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 8; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->6<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes
    in the portions of our revenue represented by various products and customers;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">delays
    or problems in the introduction of new products;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the
    announcement or introduction of new products, services or technological innovations by our competitors;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">variations
    in our product mix;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the
    timing and amount of our expenditures in anticipation of future sales;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">increased
    costs of raw materials or supplies;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes
    in the volume or timing of product orders; and</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">availability
    of raw material in a timely manner in periods of disruption such as, but not limited to, COVID-19.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
operations are subject to seasonal fluctuation.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
TPA business is the least seasonal, however there is a small increase in the spring related to inventory building for the crop season
in the United States and a small slowdown in December as oilfield customers run down stock in advance of year end, but otherwise, there
is little seasonal variation. We believe we are able to adequately respond to these seasonal fluctuations by reducing or increasing production
as needed. The foregoing is equally true of our nitrogen conservation products. The use of our swimming pool products increases in summer
months in most markets and results in our sales from January to June being greater than in July through December. Markets for our WATERSAVR&#174;
product are also seasonal, depending on the wet versus dry seasons in particular countries. We attempt to sell into a variety of countries
with different seasons on both sides of the equator in order to minimize seasonality.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Interruptions
in our ability to purchase raw materials and components may adversely affect our profitability.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
purchase certain raw materials and components from third parties pursuant to purchase orders placed from time to time. Because we do
not have guaranteed long-term supply arrangements with our suppliers, any material interruption in our ability to purchase necessary
raw materials or components could have a material adverse effect on our business, financial condition and results of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
WATERSAVR&#174; product has not proven to be a revenue producing product and we may never recoup the cost associated with its development.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
marketing efforts of our WATERSAVR&#174; product may result in continued losses. We introduced our WATERSAVR&#174; product in June 2002
and, to date, we have delivered quantities for testing by potential customers, but only a few customers have ordered the product for
commercial use. This product can achieve success only if it is ordered in substantial quantities by commercial customers who have determined
that the water saving benefits of the product exceed the costs of purchase and deployment of the product. We can offer no assurance that
we will receive sufficient orders of this product to achieve profits or cover the expenses incurred to manufacture and market this product.
We have received National Sanitation Foundation approval for the use of WATERSAVR&#174; in drinking water in the United States. Nevertheless,
we may require county or state approval on a case by case basis. We expect to spend $50,000 on the marketing and production of our WATERSAVR&#174;
product in fiscal 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>


<!-- Field: Page; Sequence: 9; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->7<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>If
we do not introduce new products in a timely manner, our products could become obsolete and our operating results would suffer.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Without
the timely introduction of new products and enhancements, our products could become obsolete over time, in which case our revenue and
operating results would suffer. The success of our new product offerings will depend upon several factors, including our ability to:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">accurately
    anticipate customer needs;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">innovate
    and develop new products and applications;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">successfully
    commercialize new products in a timely manner;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">price
    our products competitively and manufacture and deliver our products in sufficient volumes and on time; and</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">differentiate
    our products from our competitors&#8217; products.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
developing any new product, we may be required to make a substantial investment before we can determine the commercial viability of the
new product. If we fail to accurately foresee our customers&#8217; needs and future activities, we may invest heavily in research and
development of products that do not lead to significant revenues.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
are dependent upon certain customers.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Among
our current customers, we have identified three that are sizable enough that the loss of any one would be significant. Any loss of one
or more of these customers could result in a substantial reduction in our revenues. See &#8220;Principal Customers&#8221; for further
details.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Economic,
political and other risks associated with international sales and operations could adversely affect our sales.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Revenues
from shipments made outside of the United States accounted for approximately 20% of our revenues in the year ended December 31, 2021,
32% in the year ended December 31, 2020 and 45% in the year ended December 31, 2019. Since we sell our products worldwide, our business
is subject to risks associated with doing business internationally. We anticipate that revenues from international operations will continue
to represent a sizable portion of our total revenue. Accordingly, our future results could be harmed by a variety of factors, including:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes
    in foreign currency exchange rates;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes
    in a country&#8217;s or region&#8217;s political or economic conditions, particularly in developing or emerging markets;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">longer
    payment cycles of foreign customers and difficulty of collecting receivables in foreign jurisdictions;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">trade
    protection measures and import or export licensing requirements;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">differing
    tax laws and changes in those laws;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">difficulty
    in staffing and managing widespread operations;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">differing
    laws regarding protection of intellectual property; </span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">differing
    regulatory requirements and changes in those requirements; and</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">impact
    of the COVID-19 virus.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 10; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->8<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
are subject to credit risk and may be subject to substantial write-offs if one or more of our significant customers default on their
payment obligations to us.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
currently allow our major customers between 30 and 90 days to pay for each sale. This practice, while customary, presents an accounts
receivable write-off risk if one or more of our significant customers defaulted on their payment obligations to us. Any such write-off,
if substantial, would have a material adverse effect on our business and results of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
products can be hazardous if not handled, stored and used properly; litigation related to the handling, storage and safety of our products
would have a material adverse effect on our business and results of operations.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Some
of our products are flammable and must be stored properly to avoid fire risk. Additionally, some of our products may cause irritation
to a person&#8217;s eyes if they are exposed to the concentrated product. Although we label our products to warn of such risks, our sales
could be reduced if our products were considered dangerous to use or if they are implicated in causing personal injury or property damage.
We are not currently aware of any circumstances in which our products have caused harm or property damage to consumers. Nevertheless,
litigation regarding the handling, storage and safety of our products would have a material adverse effect on our business and results
of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
failure to comply with environmental regulations may create significant environmental liabilities and force us to modify our manufacturing
processes.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are subject to various federal, state and local environmental laws, ordinances and regulations relating to the use, storage, handling
and disposal of chemicals. Under such laws, we may become liable for the costs of removal or remediation of these substances that have
been used by our consumers or in our operations. Such laws may impose liability without regard to whether we knew of, or caused, the
release of such substances. Any failure by us to comply with present or future regulations could subject us to substantial fines, suspension
of production, alteration of manufacturing processes or cessation of operations, any of which could have a material adverse effect on
our business, financial condition and results of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
failure to protect our intellectual property could impair our competitive position.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">While
we own certain patents and trademarks, some aspects of our business cannot be protected by patents or trademarks. Accordingly, in these
areas there are few legal barriers that prevent potential competitors from copying certain of our products, processes and technologies
or from otherwise entering into operations in direct competition with us. In particular, we have been informed that our former exclusive
agent for the sale of our products in North America is now competing with us in the swimming pool and personal spa markets. As a former
distributor, they were given access to many of our sales, marketing and manufacturing techniques.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
products may infringe on the intellectual property rights of others, and resulting claims against us could be costly and prevent us from
making or selling certain products.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Third
parties may seek to claim that our products and operations infringe on their patent<b>s</b> or other intellectual property rights. We
may incur significant expense in any legal proceedings to protect our proprietary rights or to defend infringement claims by third parties.
In addition, claims of third parties against us could result in awards of substantial damages or court orders that could effectively
prevent us from making, using or selling our products in the United States or internationally.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>A
product liability claim for damages could materially and adversely affect our financial condition and results of operations.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
business exposes us to potential product liability risks. There are many factors beyond our control that could lead to liability claims,
including the failure of our products to work properly and the chance that consumers will use our products incorrectly or for purposes
for which they were not intended. There can be no assurance that the amount of product liability insurance that we carry will be sufficient
to protect us from product liability claims. A product liability claim in excess of the amount of insurance we carry could have a material
adverse effect on our business, financial condition and results of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>


<!-- Field: Page; Sequence: 11; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->9<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
ongoing success is dependent upon the continued availability of certain key employees.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
business would be adversely affected if the services of Daniel B. O&#8217;Brien ceased to be available to us since we currently do not
have any other employee with an equivalent level of expertise in and knowledge of our industry. If Mr. O&#8217;Brien no longer served
as our President and Chief Executive Officer, we would have to recruit one or more new executives, with no real assurance that we would
be able to engage a replacement executive with the required skills on satisfactory terms. The market for skilled employees is highly
competitive, especially for employees in the fields in which we operate. While our compensation programs are intended to attract and
retain qualified employees, there can be no assurance that we will be able to retain the services of all our key employees or a sufficient
number to execute our plans, nor can there be any assurances that we will be able to continue to attract new employees as required.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    1B. </b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Unresolved
    Staff Comments.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Not
applicable.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    2.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Properties.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
lease a 6,400 sq. ft. facility in Naperville, Illinois which we use for offices and laboratories at a cost of $5,670 per month with a
lease effective to December 2025 and 61,200 sq. ft. of warehouse space in Peru, Illinois used for storage and extra capacity at a cost
of $27,000 per month currently on a month-to-month lease. We also lease a 1,300 sq. ft. facility in Mendota, Illinois used for offices
at a cost of $880 per month with a lease effective to September 2023.We own a 56,780 sq. ft. facility in Peru, Illinois and a 14,000
sq. ft facility in Mendota, Illinois which is used to manufacture our TPA line of products. In 2017, we purchased a 3,000 sq ft building
on 1 acre of land in Taber, Alberta.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
3.3 acres of cleared and undeveloped land in Taber, AB Canada was disposed of for the proceeds of $263,380 ($333,899CAD). With a cost
of $219,318 ($278,040CAD) the Company recognized a gain of $44,330 ($55,859CAD) on the disposal</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    3.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Legal
    Proceedings.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    4.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Mine
    Safety Disclosures</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Not
applicable.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>PART
II</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    5. </b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Market
    for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchase of Equity Securities.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
common stock is traded on the NYSE American under the symbol &#8220;FSI&#8221;. The following is the range of high and low closing prices
for our common stock for the periods indicated:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">High</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Low</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline; font-weight: bold">Year Ended December 31, 2021</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; width: 68%; text-align: left">First Quarter</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">4.45</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">2.48</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Second Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4.08</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2.97</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Third Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4.33</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3.31</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Fourth Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4.00</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3.29</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 12; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->10<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">High</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Low</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline; font-weight: bold">Year Ended December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; width: 68%; text-align: left">First Quarter</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">2.57</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">1.06</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Second Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2.19</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.06</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Third Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2.93</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.87</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Fourth Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2.92</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2.05</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of March 28, 2022, we had approximately 2,300 shareholders.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
common stock also trades on the Frankfurt stock exchange under the symbol &#8220;FXT.&#8221;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company declared a special dividend of $0.05 per share on February 25, 2019, paid on March 15, 2019 to shareholders of record on March
6, 2019. On March 12, 2019 the Company announced an annual dividend of $0.15 per share to be paid in two tranches. Shareholders of record
on March 31, 2019 were paid $0.075 on April 15, 2019 and shareholders of record on October 1, 2019 were paid the same amount on October
15, 2019. On March 18, 2020, the Company suspended the dividend until further notice due to the uncertainty surrounding the COVID-19
virus.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None
of our officers or directors, nor any of our principal shareholders purchased, on our behalf, any shares of our common stock from third
parties either in a private transaction or as a result of purchases in the open market during the years ended December 31, 2021 and 2020</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of March 28, 2022, we had 12,375,746 outstanding shares of common stock. The following table lists additional shares of
our common stock, including shares issuable upon the exercise of options which have not yet vested, which may be issued as of March 28,
2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">Number</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">Note</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td>&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Of Shares</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Reference</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 68%; text-align: left">Shares issuable upon exercise of options granted to our officers, directors, employees, consultants, and third parties</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">771,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A.
Options are exercisable at prices ranging from $1.42 to $4.13 per share. See Item 11 of this report for more information concerning these
options.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    6.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Selected
    Financial Data.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Not
applicable.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    7.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Management&#8217;s
    Discussion and Analysis of Financial Condition and Results of Operation.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Results
of Operations</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have three product lines.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
first is a chemical (&#8220;EWCP&#8221;) used in swimming pools and spas. The product forms a thin, transparent layer on the water&#8217;s
surface. The transparent layer slows the evaporation of water, allowing the water to retain a higher temperature for a longer period
of time thereby reducing the energy required to maintain the desired temperature of the water. A modified version of EWCP can also be
used in reservoirs, potable water storage tanks, livestock watering pods, canals, and irrigation ditches for the purpose of reducing
evaporation.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
second product, biodegradable polymers (&#8220;TPAs&#8221;), is used by the petroleum, chemical, utility and mining industries to prevent
corrosion and scaling in water piping. TPAs can also be used to increase biodegradability in detergents and in the agriculture industry
to increase crop yields by enhancing fertilizer uptake.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
third product line is nitrogen conservation products for the agriculture industry. These products decrease the loss of nitrogen fertilizer
after application to the field and allow less fertilizer to be used. These products are considered TPA products and are made and sold
by our TPA division.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 13; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->11<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Material
changes in the line items in our Statement of Income and Comprehensive Income for the year ended December 31, 2021 as compared to the
same period last year, are discussed below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 25%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 15%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Increase
    (I) or Decrease (D)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 56%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Reason</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Sales</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 10pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">EWCP
    products</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">I</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Increase
    in customer orders.</span></p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding-left: 10pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">TPA
    products</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">I</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Growth
    in most product lines.</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Wages</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">I</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Increased
    wages to retain employees.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Lease
    expense</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">D</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    purchase of ENP Realty by ENP Investments reduced lease expense.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Interest
    expense</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">D</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Decreased
    debt resulted in decreased interest expense.</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Commissions</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">D</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">One
    time commission for historic sales in 2020 did not reoccur in 2021.</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Currency
    exchange</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">I</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Currency
    exchange increased as a result of the movements in the US/Canadian dollar exchange rate and its effects on US dollar cash balances
    and US dollar payables held by the Company&#8217;s&#8217; Canadian subsidiaries.</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Gain
    on investments</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">D</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Florida
    LLC that the Company invested in had higher costs and lower net income in 2021.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
factors that will most significantly affect future operating results will be:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the
    sale price of crude oil which is used in the manufacture of aspartic acid we import from China. Aspartic acid is a key ingredient
    in our TPA product. If tariffs are maintained or expanded and if relief is not available, some customers may experience price increases;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">activity
    in the oil and gas industry, as we sell our TPA product to oil and gas companies;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">drought
    conditions, since we also sell our TPA product to farmers; and</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the
    impact of COVID-19 virus.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
than the foregoing we do not know of any trends, events or uncertainties that have had, or are reasonably expected to have, a material
impact on our revenues or expenses.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Capital
Resources and Liquidity</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
sources and (uses) of cash for the years ended December 31, 2021 and 2020 are shown below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td>&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 68%; text-align: left">Cash provided by operations</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">4,535,746</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">5,705,441</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Recovery of long term deposits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">22,090</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Purchase of investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(500,000</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(3,152,025</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Distributions from equity investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">359,300</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">972,295</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Acquisition of ENP Realty, LLC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">13,419</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Sale of property and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">263,380</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">9,490</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Purchases of property, equipment and leaseholds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(782,219</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(1,080,598</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Advances (repayments) of short term line of credit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">184,746</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(273,909</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Repayment of long term debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(943,080</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(4,395,915</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Proceeds of long term debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,413,160</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Lease payments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(287,903</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(385,541</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Payment on convertible note</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(500,000</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Distributions to non-controlling interests</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(804,003</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(594,882</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Sale of common stock</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">140,440</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">39,750</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Changes in exchange rates</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">96,391</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">45,331</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 14; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->12<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have sufficient cash resources to meets our future commitments and cash flow requirements for the coming year. As of December 31, 2021,
our working capital was $13,986,013 (2020 - $11,146,211) and we have no substantial commitments or capital requirements that require
significant outlays of cash over the coming fiscal year.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are committed to minimum rental payments for property and premises aggregating approximately $297,720 over the term of two leases, the
last expiring on December 31, 2025.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Commitments
for rent in the next four years are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 60%; margin-left: 0.5in">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 78%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 18%; text-align: right">78,240</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">77,100</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">70,440</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2025</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">71,940</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
than as disclosed above, we do not know of any trends, demands, commitments, events or uncertainties that will result in, or that are
reasonable likely to result in, our liquidity increasing or decreasing in any material way.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
than as disclosed above, we do not know of any significant changes in our expected sources and uses of cash.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
do not have any commitments or arrangements from any person to provide us with any equity capital.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Critical
Accounting Policies And Estimates</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Allowances
for Product Returns</i>. We grant certain of our customers the right to return product which they are unable to sell. Upon sale, we evaluate
the need to record a provision for product returns based on our historical experience, economic trends and changes in customer demand.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Allowances
for Doubtful Accounts Receivable</i>. We evaluate our accounts receivable to determine if they will ultimately be collected. This evaluation
includes significant judgments and estimates, including an analysis of receivables aging and a review of large accounts. If, for example,
the financial condition of a customer deteriorates resulting in an impairment of its ability to pay or a pattern of late payment develops,
an allowance may be required.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Provisions
for Inventory Obsolescence</i>. We may need to record a provision for estimated obsolescence and shrinkage of inventory. Our estimates
would consider the cost of inventory, the estimated market value, the shelf life of the inventory and our historical experience. If there
are changes to these estimates, provisions for inventory obsolescence may be necessary.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Valuation
of Goodwill and Intangible Assets.</i> We consider goodwill and intangible assets to determine if there are qualitative factors which
exist which may indicate that the carrying value exceeds the fair value. Our estimates are based upon an assessment of market conditions
and expected future cash flows to be generated by the reporting units and related assets. If factors exist which indicate that the carrying
value exceeds the fair value, an impairment charge against the goodwill and intangible assets could be required.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Useful
lives of Property, Equipment and Leaseholds and Intangible Assets.</i> We amortize and depreciate our property, equipment and leaseholds
and intangible assets based on their estimated useful lives. We estimate the expected useful lives based on the expected term over which
the asset is expected to continue to generate economic benefit for our company. If there are differences between the expected useful
lives and the actual useful lives of the asset, impairment of property, equipment and leaseholds or intangible assets could be necessary.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 15; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->13<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Revenue
Recognition. </i>We follow a five-step model for revenue recognition. The five steps are: (1) identification of the contract(s) with
the customer, (2) identification of the performance obligation(s) in the contract(s), (3) determination of the transaction price, (4)
allocation of the transaction price to the performance obligation, and (5) recognition of revenue when (or as) the performance obligation
is satisfied. We fulfill our performance obligations when control of product transfers to the customer, which is generally at the time
the product is shipped since risk of loss is transferred to the purchaser upon delivery to the carrier. For shipments which are F.O.B.
shipping point, we have elected to account for shipping and handling activities as a fulfillment cost rather than as an additional promised
service and performance obligation.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
Note 2 to the consolidated financial statements included as part of this report for a description of our significant accounting policies.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Recent
Accounting Pronouncements</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have evaluated recent accounting pronouncements issued since January 1, 2021 and determined that the adoption of these recent accounting
pronouncements will not have a material effect on our consolidated financial statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    7A.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Quantitative
    and Qualitative Disclosures About Market Risk.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Not
applicable.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 16; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->14<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    8.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Financial
    Statements and Supplementary Data.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>FLEXIBLE
SOLUTIONS INTERNATIONAL, INC. AND SUBSIDIARIES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>INDEX
TO CONSOLIDATED FINANCIAL STATEMENTS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Page
    </b></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#ba_001">Report of Independent Registered Public Accounting Firm</a>, <span id="xdx_900_edei--AuditorName_c20210101__20211231_z8IIl4eorIql"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:AuditorName">Smythe LLP</ix:nonNumeric></span> (PCAOB ID NO: <span id="xdx_90B_edei--AuditorFirmId_c20210101__20211231_zAt6bOed3sk9"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:AuditorFirmId">995</ix:nonNumeric></span>)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">F-1</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="#ba_002"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consolidated Balance Sheets as of December 31, 2021 and 2020</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">F-2</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="#ba_003"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consolidated Statements of Income and Comprehensive Income for the Years Ended December 31, 2021 and 2020</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">F-3</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="#ba_004"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consolidated Statements of Cash Flows for the Years Ended December 31, 2021 and 2020</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">F-4</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="#ba_005"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consolidated Statements of Stockholders&#8217; Equity for the Years Ended December 31, 2021 and 2020</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">F-5</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="#ba_006"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Notes to Consolidated Financial Statements</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">F-6</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 17; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->15<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span id="ba_001"></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Report
of Independent Registered Public Accounting Firm</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">To
the Stockholders and the Board of Directors of Flexible Solutions International, Inc.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Opinion
on the Consolidated Financial Statements</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have audited the accompanying consolidated financial statements of Flexible Solutions International, Inc. and subsidiaries (the &#8220;Company&#8221;)
which comprise the consolidated balance sheets as of December 31, 2021 and 2020, and the related consolidated statements of income and
comprehensive income, cash flows and stockholders&#8217; equity for the years then ended, and the related notes (collectively referred
to as the &#8220;consolidated financial statements&#8221;).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
our opinion, the consolidated financial statements present fairly, in all material respects, the consolidated financial position of the
Company as of December 31, 2021 and 2020, and the consolidated results of its operations and its consolidated cash flows for the years
then ended, in conformity with accounting principles generally accepted in the United States of America.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Basis
for Opinion</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
consolidated financial statements are the responsibility of the Company&#8217;s management. Our responsibility is to express an opinion
on the Company&#8217;s consolidated financial statements based on our audits. We are a public accounting firm registered with the Public
Company Accounting Oversight Board (United States) (&#8220;PCAOB&#8221;) and are required to be independent with respect to the Company
in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission
and the PCAOB.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain
reasonable assurance about whether the consolidated financial statements are free of material misstatement, whether due to error or fraud.
The Company is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part
of our audits, we are required to obtain an understanding of internal control over financial reporting, but not for the purpose of expressing
an opinion on the effectiveness of the Company&#8217;s internal control over financial reporting. Accordingly, we express no such opinion.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
audits included performing procedures to assess the risks of material misstatement of the consolidated financial statements, whether
due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence
regarding the amounts and disclosures in the consolidated financial statements. Our audits also included evaluating the accounting principles
used and significant estimates made by management, as well as evaluating the overall presentation of the consolidated financial statements.
We believe that our audits provide a reasonable basis for our opinion.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Critical
Audit Matter</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
critical audit matter communicated below is a matter arising from the current period audit of the consolidated financial statements that
was communicated or required to be communicated to the audit committee and that: (1) relate to accounts or disclosures that are material
to the consolidated financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication
of this critical audit matter does not alter in any way our opinion on the consolidated financial statements, taken as a whole, and we
are not, by communicating the critical audit matter below, providing a separate opinion on the critical audit matter or on the accounts
or disclosures to which it relates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Valuation
of inventory</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At
December 31, 2021, the Company&#8217;s inventory balance was $9,502,005. As discussed in Note 2 to the consolidated financial statements,
the Company records inventory at the lower of cost on a first-in, first-out or weighted average basis and net realizable value. To determine
inventory valuation, management conducts regular reviews of overhead costs and the calculation to allocate these expenditures to inventory
cost.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
identified the assessment of valuation of inventory as a critical audit matter. Auditing management&#8217;s inventory valuation involved
significant judgment because the estimates are based on several factors. In particular, in estimating inventory cost inputs, management
developed assumptions such as the allocation of overhead expenditures to inventory cost.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following are the primary procedures we performed to address this critical audit matter. <span style="background-color: white">We obtained
an understanding and reviewed the appropriateness over the Company&#8217;s costing of inventory. We performed substantive procedures
over the inputs of costing of inventory, including overhead allocation by agreeing inputs to third party source documentation. We tested
management&#8217;s allocation of overhead costs between inventory products by assessing the appropriateness of the allocation method
and recalculated the formula used to determine computational accuracy. We performed analytical procedures to obtain an understanding
of the impact of economic conditions and market competition. We compared the inventory on hand to related unit sales to assess the net
realizable value of inventory and held discussions with management and operational personnel to help identify any slow-moving obsolete
inventory.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chartered
Professional Accountants</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">/s/ Smythe LLP</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0">Smythe LLP</p>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_903_edei--AuditorLocation_c20210101__20211231_zbDw2QOeraYl"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="dei:AuditorLocation">Vancouver,
Canada</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March
29, 2022</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have served as the Company&#8217;s auditor since 2019.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 18; Options: NewSection; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->1<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>FLEXIBLE
SOLUTIONS INTERNATIONAL, INC.</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="ba_002"></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Consolidated
Balance Sheets</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>As
at December 31</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(U.S.
Dollars)</b></span></p>

<p style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" id="xdx_303_111_zTWpXuw2cLxe" summary="xdx: Statement - Consolidated Balance Sheets" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49C_20211231_zk7TNGMBPuN9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_499_20201231_zvbliqny5hRf" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2020</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--AssetsAbstract_iB" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--AssetsCurrentAbstract_i01B" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">Current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--Cash_i02I_maACzKfg_zJJW2XJ7nwjl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; width: 68%">Cash</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:Cash" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,710,227</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:Cash" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,472,776</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--DepositsAssetsCurrent_i02I_pp0p0_maACzKfg_ziWqgDnbqaBh" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Term deposits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepositsAssetsCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,025,347</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepositsAssetsCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,000,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AccountsReceivableNetCurrent_i02I_pp0p0_maACzKfg_z2A0o5dP5tKj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Accounts receivable (Note 4)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,129,329</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,889,813</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_i02I_pp0p0_maACzKfg_z6HNov64Xlvg" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Inventories (Note 5)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,502,005</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,372,476</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--PrepaidExpenseCurrent_i02I_pp0p0_maACzKfg_zPRy6Jy3KLn2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Prepaid expenses</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PrepaidExpenseCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">442,161</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PrepaidExpenseCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">302,447</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--AssetsCurrent_i02TI_pp0p0_mtACzKfg_maAzjHX_zahyoZb5ESd3" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Total current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">23,809,069</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">19,037,512</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--PropertyPlantAndEquipmentNet_i01I_pp0p0_maAzjHX_zVxZtbFIucsi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Property, equipment and leaseholds, net (Note 6)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,931,713</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,142,041</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_ecustom--FiniteLivedPatentGross_i01I_pp0p0_maAzjHX_zvCx0ng3qCbh" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Patents (Note 7)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:FiniteLivedPatentGross" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,699</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:FiniteLivedPatentGross" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">30,137</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OperatingLeaseRightOfUseAsset_i01I_pp0p0_maAzjHX_z4ykT9vRAfz6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Right of use assets (Note 3)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">217,267</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">483,113</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--IntangibleAssetsNetExcludingGoodwill_i01I_pp0p0_maAzjHX_zwyVKWXZSxM3" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Intangible assets (Note 8)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,600,000</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,776,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DepositsAssetsNoncurrent_i01I_pp0p0_maAzjHX_z7muvb09bUcd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Long term deposits (Note 9)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepositsAssetsNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,540</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepositsAssetsNoncurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,540</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--EquityMethodInvestments_i01I_pp0p0_maAzjHX_zP3k8FWEHFMj" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Investments (Note 10)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,424,010</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,776,167</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--Goodwill_i01I_pp0p0_maAzjHX_zvLRby0zbUEb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Goodwill (Note 8)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,534,275</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,534,275</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--DeferredIncomeTaxAssetsNet_i01I_pp0p0_maAzjHX_zW089hRxHpYf" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Deferred tax asset (Note 14)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,697</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">299,603</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--Assets_i01TI_pp0p0_mtAzjHX_zM2UaA5kRcK3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Total Assets</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:Assets" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">39,551,270</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:Assets" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">35,087,388</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LiabilitiesAbstract_iB" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--LiabilitiesCurrentAbstract_i01B" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">Current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AccountsPayableCurrent_i02I_pp0p0_maLCzWj7_zgGoFD7ePvG8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Accounts payable</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,283,486</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">558,105</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--AccruedLiabilitiesCurrent_i02I_pp0p0_maLCzWj7_z3HlhapBzcD1" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Accrued liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">457,062</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,225,804</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredRevenueCurrent_i02I_pp0p0_maLCzWj7_zqc8s60lAvXg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Deferred revenue</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredRevenueCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">349,004</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredRevenueCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">314,277</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--TaxesPayableCurrent_i02I_pp0p0_maLCzWj7_zHMJUrcqfxN1" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Income taxes payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:TaxesPayableCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,561,396</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:TaxesPayableCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,540,348</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--LinesOfCreditCurrent_i02I_pp0p0_maLCzWj7_zhOffbgMPAee" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Short term line of credit (Note 11)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,300,819</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,116,073</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--OperatingLeaseLiabilityCurrent_i02I_pp0p0_maLCzWj7_zacrzBhT2Ecf" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Current portion of lease liability (Note 3)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">77,715</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">287,900</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--LongTermDebtCurrent_i02I_pp0p0_maLCzWj7_zoLZJaNyiwLb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Current portion of long term debt (Note 12)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">793,574</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">848,794</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LiabilitiesCurrent_i02TI_pp0p0_mtLCzWj7_maLz34W_zb9DBMRYn5ng" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 0pt; font-weight: bold; text-align: left">Total current liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,823,056</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,891,301</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--OperatingLeaseLiabilityNoncurrent_i01I_pp0p0_maLz34W_zvqhv6jl1YM1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: justify">Lease liability (Note 3)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">139,552</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">195,213</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--DeferredIncomeTaxLiabilitiesNet_i01I_pp0p0_maLz34W_zCYgtZDXQNGk" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: justify">Deferred income tax liability (Note 14)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">310,162</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">233,751</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--LongTermDebtNoncurrent_i01I_pp0p0_maLz34W_zmCnUZYkdLg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: justify">Long term debt (Note 12)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,573,024</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,998,844</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--Liabilities_i01TI_pp0p0_mtLz34W_maLASEzfGy_z3e1lijO1gAa" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Total Liabilities</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:Liabilities" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">11,845,794</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:Liabilities" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">11,319,109</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--StockholdersEquityAbstract_i01B" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Stockholders&#8217; Equity</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Capital stock (Note 17)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Authorized: <span id="xdx_908_eus-gaap--CommonStockSharesAuthorized_iI_pid_c20211231_z2PwLMAppft4" title="Common stock, shares authorized"><span id="xdx_906_eus-gaap--CommonStockSharesAuthorized_iI_pid_c20201231_zpXtSbeayMC2" title="Common stock, shares authorized"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">50,000,000</ix:nonFraction></ix:nonFraction></span></span> common shares with a par value of $<span id="xdx_90C_eus-gaap--CommonStockParOrStatedValuePerShare_iI_pid_c20211231_zkvScT2idQKa" title="Common stock, par value"><span id="xdx_90D_eus-gaap--CommonStockParOrStatedValuePerShare_iI_pid_c20201231_z1jYOcJOC2a9" title="Common stock, par value"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.001</ix:nonFraction></ix:nonFraction></span></span> each; <span id="xdx_908_eus-gaap--PreferredStockSharesAuthorized_iI_pid_c20211231_zzKtIzkKP1y3" title="Preferred stock, shares authorized"><span id="xdx_900_eus-gaap--PreferredStockSharesAuthorized_iI_pid_c20201231_z4lfcrjqiang" title="Preferred stock, shares authorized"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,000,000</ix:nonFraction></ix:nonFraction></span></span> preferred shares with a par value of $<span id="xdx_90E_eus-gaap--PreferredStockParOrStatedValuePerShare_iI_pid_c20211231_z2OubtdO92re" title="Preferred stock, par value"><span id="xdx_90B_eus-gaap--PreferredStockParOrStatedValuePerShare_iI_pid_c20201231_z3YOdILDjfni" title="Preferred stock, par value"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.01</ix:nonFraction></ix:nonFraction></span></span> each</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Issued and outstanding:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--CommonStockValue_i02I_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt"><span id="xdx_904_eus-gaap--CommonStockSharesIssued_iI_pid_c20211231_zHqKLrBXbK8b" title="Common stock, shares issued"><span id="xdx_90D_eus-gaap--CommonStockSharesOutstanding_iI_pid_c20211231_z9j4g79esVK5" title="Common stock, shares outstanding"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,355,246</ix:nonFraction></ix:nonFraction></span></span> (2020: <span id="xdx_904_eus-gaap--CommonStockSharesIssued_iI_pid_c20201231_zIfRdO6mTnD6" title="Common stock, shares issued"><span id="xdx_905_eus-gaap--CommonStockSharesOutstanding_iI_pid_c20201231_ztjw1GV38Tfg" title="Common stock, shares outstanding"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,260,545</ix:nonFraction></ix:nonFraction></span></span>) common shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,355</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,261</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--CommonStockValue_i02I_pp0p0_maSEz2zS_zsZR7VJ8hc2a" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Capital stock (Note 17) Authorized: 50,000,000 common shares with a par value of $0.001 each; 1,000,000
    preferred shares with a par value of $0.01 each Issued and outstanding: 12,355,246 (2020: 12,260,545) common shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,355</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,261</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--AdditionalPaidInCapital_i02I_pp0p0_maSEz2zS_zqRkkOYCc07b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Capital in excess of par value</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">16,983,648</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">16,633,190</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AccumulatedOtherComprehensiveIncomeLossNetOfTax_i02I_pp0p0_maSEz2zS_zqBqATrWYQNd" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Other comprehensive loss</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">775,730</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">872,121</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_408_eus-gaap--RetainedEarningsAccumulatedDeficit_i02I_pp0p0_maSEz2zS_zAQpibPvK7Jf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Accumulated earnings</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,882,360</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,433,198</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--StockholdersEquity_i02TI_pp0p0_mtSEz2zS_maSEIPAz8f5_zZK4yQKpSXnj" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Total stockholders&#8217; equity &#8211; controlling interest</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">25,102,633</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">21,206,528</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--MinorityInterest_i02I_pp0p0_maSEIPAz8f5_ztMS7yqJbUc8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Non-controlling interests (Note 18)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MinorityInterest" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,602,843</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MinorityInterest" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,561,751</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_i02TI_pp0p0_mtSEIPAz8f5_maLASEzfGy_zocH6cZpPhnj" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Total Stockholders&#8217; Equity</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">27,705,476</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">23,768,279</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LiabilitiesAndStockholdersEquity_i01TI_pp0p0_mtLASEzfGy_zC9YG0cbuo88" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Total Liabilities and Stockholders&#8217; Equity</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">39,551,270</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">35,087,388</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Subsequent
events (See Note 20)</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
Notes to Consolidated Financial Statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 19; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->2<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>FLEXIBLE
SOLUTIONS INTERNATIONAL, INC.</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="ba_003"></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Consolidated
Statements of Income and Comprehensive Income</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>For
the Years Ended December 31</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(U.S.
Dollars)</b></span></p>

<p style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" id="xdx_30C_113_zPgxD1iIyuHd" summary="xdx: Statement - Consolidated Statements of Income and Comprehensive Income" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49A_20210101__20211231_zCoTv8VhnEAi" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_496_20200101__20201231_zH6ErkNKDfNh" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2020</td><td style="font-weight: bold">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_maGPzlfV_zBF37mxbrNT8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 68%; font-weight: bold">Sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,416,335</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">31,407,454</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--CostOfGoodsAndServicesSold_msGPzlfV_zMyQNtnTRl3h" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">Cost of sales (Note 6, 7 &amp; 8)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">23,019,824</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">21,641,035</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--GrossProfit_iT_pp0p0_mtGPzlfV_maOILzj7W_zLOUtuWvcuH4" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Gross profit</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">11,396,511</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,766,419</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OperatingExpensesAbstract_iB" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Operating Expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--SalariesAndWages_i01_pp0p0_maOEzfTO_zXDog86irhL" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Wages</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:SalariesAndWages" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,321,285</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:SalariesAndWages" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,169,825</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--OfficersCompensation_i01_pp0p0_maOEzfTO_zMDroDGRPh3a" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Administrative salaries and benefits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OfficersCompensation" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">883,460</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OfficersCompensation" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">804,272</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--GeneralInsuranceExpense_i01_pp0p0_maOEzfTO_zxYq6ysGCg0e" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Insurance</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GeneralInsuranceExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">581,187</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GeneralInsuranceExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">479,218</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--OperatingLeaseExpense_i01_pp0p0_maOEzfTO_zZin7CRXitzi" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Lease expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">382,663</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">453,639</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--Consulting_i01_pp0p0_maOEzfTO_zu9u6wtl69d8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Consulting</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:Consulting" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">320,759</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:Consulting" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">277,277</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--ProfessionalFees_i01_pp0p0_maOEzfTO_z7sd8oGVdtGe" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Professional fees</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProfessionalFees" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">285,424</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProfessionalFees" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">283,842</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--OtherGeneralExpense_i01_pp0p0_maOEzfTO_zxMX6030yV72" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Office and miscellaneous</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherGeneralExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">269,459</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherGeneralExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">250,330</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_ecustom--InterestExpenses_i01_pp0p0_maOEzfTO_zhG1spAhOzNf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:InterestExpenses" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">199,930</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:InterestExpenses" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">260,657</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--SellingAndMarketingExpense_i01_pp0p0_maOEzfTO_zo9EmrWHHXfe" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Advertising and promotion</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">172,185</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">197,196</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ResearchAndDevelopmentExpense_i01_pp0p0_maOEzfTO_zlQ8NMMbfdS4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Research</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">116,411</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">81,422</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--TravelAndEntertainmentExpense_i01_pp0p0_maOEzfTO_zqXRrHyRUgbk" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Travel</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:TravelAndEntertainmentExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">107,894</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:TravelAndEntertainmentExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">95,053</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--InvestorRelationsAndTransferAgentFee_i01_pp0p0_maOEzfTO_zoPqO50fsMm9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Investor relations and transfer agent fee</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:InvestorRelationsAndTransferAgentFee" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">94,256</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:InvestorRelationsAndTransferAgentFee" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">78,930</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_ecustom--Commissions_i01_pp0p0_maOEzfTO_zVuoR0h6HqUi" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Commissions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:Commissions" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">62,632</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:Commissions" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">148,922</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--CommunicationsAndInformationTechnology_i01_pp0p0_maOEzfTO_zjk2kCUmqRZ5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Telecommunications</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommunicationsAndInformationTechnology" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">45,482</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommunicationsAndInformationTechnology" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">43,535</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--ForeignCurrencyTransactionGainLossBeforeTax_i01N_pp0p0_di_msOEzfTO_zmIOyZzALp0i" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Currency exchange</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">25,091</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,890</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--UtilitiesOperatingExpense_i01_pp0p0_maOEzfTO_zAO8tupzjxw4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Utilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:UtilitiesOperatingExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">21,523</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:UtilitiesOperatingExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">17,651</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_ecustom--ShippingCost_i01_pp0p0_maOEzfTO_zLS9cvX6a7gf" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Shipping</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:ShippingCost" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">16,567</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:ShippingCost" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,839</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--ProvisionForDoubtfulAccounts_i01_pp0p0_maOEzfTO_zWRWjuG93xD1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Bad debt expense</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,979</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,016</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OperatingExpenses_i01T_pp0p0_mtOEzfTO_msOILzj7W_ziLYlT5a2amb" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Total operating expenses</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,913,187</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,648,734</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--OperatingIncomeLoss_iT_pp0p0_mtOILzj7W_maILFCOzGR5_zTE8cycfpxxb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt; font-weight: bold; text-align: left">Operating income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,483,324</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,117,685</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--GainLossOnSaleOfPropertyPlantEquipment_pp0p0_maILFCOzGR5_z6tAMEqwedZ1" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 0pt; font-weight: bold; text-align: left">Gain on sale of equipment (Note 6)</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0274">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,490</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_ecustom--GainLossOnSaleOfLand_pp0p0_maILFCOzGR5_zJtn4dqz9efb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Gain on sale of land (Note 6)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:GainLossOnSaleOfLand" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">44,330</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0278">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--PppLoanForgiveness_maILFCOzGR5_ztPoBGqaBLD2" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">PPP loan forgiveness (Note 12)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:PppLoanForgiveness" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">537,960</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0281">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--GainLossOnInvestments_maILFCOzGR5_zhUofevPzPbj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Gain on investments (Note 10)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GainLossOnInvestments" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">507,143</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GainLossOnInvestments" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">877,358</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--GainOnAcquisition_maILFCOzGR5_zdFUi08S7e6" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Gain on acquisition of ENP Realty (Note 10)</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0286">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:GainOnAcquisition" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">133,341</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--InvestmentIncomeInterest_maILFCOzGR5_zMeoIxHnXGCd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Interest income</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:InvestmentIncomeInterest" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">77,999</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:InvestmentIncomeInterest" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">53,101</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_iT_pp0p0_mtILFCOzGR5_maPLz25i_zLRA8c1hahx3" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Income before income tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,650,756</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,190,975</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredIncomeTaxesAndTaxCreditsAbstract_iB" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Income taxes (Note 14)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_di_msPLz25i_zEHGcyOBnuk8" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Deferred income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">363,317</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">409,553</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_405_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_di_msPLz25i_zDbcXeU7UuWl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Current income tax expense</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,993,182</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,197,888</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_402_eus-gaap--ProfitLoss_mtPLz25i_maNILzwP6_za4Sj8IDr9H" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Net income for the year</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,294,257</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,583,534</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_iN_di_msNILzwP6_ziBsrUIlEUD9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Net income attributable to non-controlling interests</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">845,095</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">606,484</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_402_eus-gaap--NetIncomeLoss_mtNILzwP6_zw0TAcyATIQ9" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Net income attributable to controlling interest</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,449,162</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,977,050</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--EarningsPerShareBasicAndDiluted_pid_z7surglshXk" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Income per share (basic and diluted) (Note 15)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasicAndDiluted" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.28</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasicAndDiluted" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.24</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zPeBQyd1ApPe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Weighted average number of common shares (basic)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,316,254</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,240,641</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zpFlU7zuZdFl" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">Weighted average number of common shares (diluted)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,505,522</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,302,552</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_iB" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Other comprehensive income:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ProfitLoss_i01_pp0p0_maCINOTzqer_z7PFwYSd66N5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,294,257</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,583,534</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_i01_pp0p0_maCINOTzqer_ztJXERfwdGGb" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Unrealized gain on foreign currency transactions</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">96,391</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">122,489</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_i01T_pp0p0_mtCINOTzqer_maCINOTzWSi_ztmGuWOSNdvf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Total comprehensive income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,390,648</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,706,023</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest_i01N_pp0p0_di_msCINOTzWSi_z59pURvpLk9a" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Comprehensive income &#8211; non-controlling interest</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">845,095</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">606,484</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--ComprehensiveIncomeNetOfTax_i01T_pp0p0_mtCINOTzWSi_z9DOlktmjIc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Comprehensive income attributable to controlling interests</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,545,553</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,099,539</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
Notes to Consolidated Financial Statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 20; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->3<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>FLEXIBLE
SOLUTIONS INTERNATIONAL, INC.</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="ba_004"></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Consolidated
Statements of Cash Flows</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>For
Years Ended December 31</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(U.S.
Dollars)</b></span></p>

<p style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" id="xdx_30B_112_zHtSvY5njfsg" summary="xdx: Statement - Consolidated Statements of Cash Flows" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49D_20210101__20211231_zNBWClcXUU2a" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_490_20200101__20201231_zxEecSLOyWBh" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2020</td><td style="font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--NetCashProvidedByUsedInOperatingActivitiesAbstract_iB" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Operating activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--ProfitLoss_i01_pp0p0_maNCPBUzwMA_zbUM4i7A6Yu9" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; width: 68%; text-align: left">Net income for the year</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,294,257</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,583,534</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_i01B" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Adjustments to reconcile net income to net cash:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--ShareBasedCompensation_i02_pp0p0_maNCPBUzwMA_zI2FBIrzHklh" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 20pt; text-align: left">Stock based compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">210,112</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">156,012</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--DepreciationAndAmortization_i02_pp0p0_maNCPBUzwMA_zUZrLjzbPKd6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Depreciation and amortization</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">965,935</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">851,672</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_ecustom--LeaseRightOfUseFinancing_i02_pp0p0_maNCPBUzwMA_zINLQVdyd5X5" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 20pt; text-align: left">Lease right of use financing</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:LeaseRightOfUseFinancing" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">22,057</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:LeaseRightOfUseFinancing" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">53,768</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--FinanceLeaseRightOfUseAssetAmortization_i02_pp0p0_maNCPBUzwMA_zJ9MdTRXuSvc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Lease right of use amortization</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">265,846</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">331,773</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_ecustom--GainLossOnInvestment_i02N_pp0p0_di_msNCPBUzwMA_zpJc88A3bgic" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 20pt; text-align: left">Gain on investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="FSI:GainLossOnInvestment" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">507,143</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="FSI:GainLossOnInvestment" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">877,358</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40B_ecustom--BadDebtExpense_i02N_pp0p0_di_msNCPBUzwMA_zeB9Mf3Lh5x9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Bad debt expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:BadDebtExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">6,979</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:BadDebtExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">1,016</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--DeferredIncomeTaxExpenseBenefit_i02_pp0p0_maNCPBUzwMA_ztg4Kp6JI7L4" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 20pt; text-align: left">Deferred income tax expense (recovery)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">363,317</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">409,553</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--GainLossOnSaleOfPropertyPlantEquipment_i02N_pp0p0_di_msNCPBUzwMA_zkcfLNjhCeY2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Gain on sale of equipment</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0370">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,490</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_408_ecustom--GainLossOnSaleOfLand_i02N_pp0p0_di_msNCPBUzwMA_zUhpx2SXWyjl" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 20pt; text-align: left">Gain on sale of land</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="FSI:GainLossOnSaleOfLand" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">44,330</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_ecustom--PaycheckProtectionProgramLoanForgiveness_i02N_pp0p0_di_msNCPBUzwMA_znm0ouLWM4d5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">PPP loan forgiveness</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="FSI:PaycheckProtectionProgramLoanForgiveness" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">537,960</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0377">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--IncreaseDecreaseInOperatingCapitalAbstract_i02B" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Changes in non-cash working capital items:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--IncreaseDecreaseInAccountsReceivable_i03N_pp0p0_di_msNCPBUzwMA_zmgeHgZtBVbe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Increase in accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,246,495</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,420,614</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_408_eus-gaap--IncreaseDecreaseInInventories_i03N_pp0p0_di_msNCPBUzwMA_zWstmdlAO26d" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 20pt; text-align: left">(Increase) decrease in inventories</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,275,746</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">1,284,607</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--IncreaseDecreaseInPrepaidExpense_i03N_pp0p0_di_msNCPBUzwMA_zUqGayGAVXJl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Increase in prepaid expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">139,714</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">83,809</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_i03_pp0p0_maNCPBUzwMA_zgVBTYuq5Kmk" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 20pt; text-align: left">Increase in accounts payable and accrued liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">102,856</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">553,478</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--IncreaseDecreaseInAccruedIncomeTaxesPayable_i03_pp0p0_maNCPBUzwMA_z42e6MKvUur3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Increase in taxes payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,021,048</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">770,243</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--IncreaseDecreaseInContractWithCustomerLiability_i03_pp0p0_maNCPBUzwMA_zirRsulw4q0c" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 20pt; text-align: left">Increase in deferred revenue</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">34,727</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">101,056</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--NetCashProvidedByUsedInOperatingActivities_i01T_pp0p0_maCCERCz9gd_mtNCPBUzwMA_zWfUWFIeoP92" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Cash provided by operating activities</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,535,746</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,705,441</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--NetCashProvidedByUsedInInvestingActivitiesAbstract_iB" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Investing activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--ProceedsFromOtherDeposits_i01_pp0p0_maNCPBUzp0E_zLqR34p5ykAl" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Return of long term deposits</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0406">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromOtherDeposits" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">22,090</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--PaymentsToAcquireInvestments_i01N_pp0p0_di_msNCPBUzp0E_zCzZUoz3R69h" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Purchase of investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireInvestments" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireInvestments" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,152,025</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_401_eus-gaap--ProceedsFromSaleOfEquityMethodInvestments_i01_pp0p0_maNCPBUzp0E_zPsPFhUG0j6a" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Proceeds of equity investment distributions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfEquityMethodInvestments" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">359,300</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfEquityMethodInvestments" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">972,295</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--PaymentsToAcquireBusinessesNetOfCashAcquired_i01N_pp0p0_di_msNCPBUzp0E_zi1RtEuuMEp8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Acquisition of ENP Realty LLC</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0415">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">13,419</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--ProceedsFromSaleOfOtherPropertyPlantAndEquipment_i01_pp0p0_maNCPBUzp0E_zjubBvTpEB74" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Sale of property and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">263,380</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,490</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_i01N_pp0p0_di_msNCPBUzp0E_zsLpeibiKYO8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Purchase of property and equipment</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">782,219</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,080,598</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_400_eus-gaap--NetCashProvidedByUsedInInvestingActivities_i01T_pp0p0_mtNCPBUzp0E_maCCERCz9gd_zyud5UyNY0nh" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 0pt; font-weight: bold; text-align: left">Cash used in investing activities</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">659,539</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">3,215,329</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--NetCashProvidedByUsedInFinancingActivitiesAbstract_iB" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Financing activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--ProceedsFromRepaymentsOfLinesOfCredit_i01_pp0p0_maNCPBUzPRh_zs7paOceLzha" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Advance (repayment) of short term line of credit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">184,746</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">273,909</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--RepaymentsOfLongTermDebt_i01N_pp0p0_di_msNCPBUzPRh_zvUtc1zgv1c7" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Repayment of long term debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:RepaymentsOfLongTermDebt" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">943,080</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:RepaymentsOfLongTermDebt" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,395,915</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_400_eus-gaap--ProceedsFromIssuanceOfLongTermDebt_i01_pp0p0_maNCPBUzPRh_zZPMDZpDW3pf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Proceeds of long term debt</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0436">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,413,160</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--PaymentsOfFinancingCosts_i01N_pp0p0_di_msNCPBUzPRh_zUJoR9H0Hz95" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Lease payments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsOfFinancingCosts" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">287,903</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsOfFinancingCosts" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">385,541</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--RepaymentsOfDebt_i01N_pp0p0_di_msNCPBUzPRh_zrGbJsoH21zc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Repayment of convertible note</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0442">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:RepaymentsOfDebt" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--PaymentsToMinorityShareholders_i01N_pp0p0_di_msNCPBUzPRh_zKzDbSlmlT77" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Distribution to non-controlling interest</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToMinorityShareholders" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">804,003</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToMinorityShareholders" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">594,882</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--ProceedsFromIssuanceOfCommonStock_i01_maNCPBUzPRh_z9OgV4JanRqf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Sale of common stock</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfCommonStock" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,440</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfCommonStock" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">39,750</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--NetCashProvidedByUsedInFinancingActivities_i01T_pp0p0_mtNCPBUzPRh_maEOEROz9m6_maCCERCz9gd_zTqFBj4yM6Ab" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Cash used in financing activities</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">1,709,800</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">2,697,337</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_maCCERCz9gd_z07TW7E1tJ84" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Effect of exchange rate changes on cash</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,391</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,331</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_iT_pp0p0_mtCCERCz9gd_zNYwjgF6fcG7" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Inflow (outflow) of cash</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,262,798</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">161,894</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_iS_pp0p0_z5JSYYz6T4c2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cash resources, beginning</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,472,776</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2019-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,634,670</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_iE_pp0p0_zmmRbJzno8zg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Cash resources, ending</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,735,574</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,472,776</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_iB" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: justify">Cash resources are comprised of:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iE_zU3LuEt0fYm2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cash and cash equivalents</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,710,227</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,472,776</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--ShortTermInvestments_iE_pp0p0_zSXVYWOuXfXk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Term deposits</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShortTermInvestments" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,025,347</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShortTermInvestments" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,000,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">6,735,574</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">4,472,776</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--SupplementalCashFlowInformationAbstract_iB" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Supplemental disclosure of cash flow information:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--IncomeTaxesPaidNet_i01_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Income taxes paid</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0478">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">464,026</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--InterestPaidNet_i01_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Interest paid</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InterestPaidNet" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">179,029</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InterestPaidNet" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">260,657</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_ecustom--InventoryAdditionsInAccountsPayableAndAccruedLiabilities_i01_pp0p0_zMdfpgBJK2N4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Inventory additions in accounts payable and accrued liabilities</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">250,923</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">397,140</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 10.05pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
Notes to Consolidated Financial Statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 21; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->4<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>FLEXIBLE
SOLUTIONS INTERNATIONAL, INC.</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="ba_005"></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Consolidated
Statements of Stockholders&#8217; Equity</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>For
the Years Ended December 31, 2021 and 2020</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(U.S.
Dollars)</b></span></p>

<p style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" id="xdx_309_114_zhrrJhPaLoQ7" summary="xdx: Statement - Consolidated Statements of Stockholders&apos; Equity" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-size: 8pt">Shares</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2" id="xdx_4BC_us-gaap--StatementEquityComponentsAxis_us-gaap--CommonStockMember_zBR1QLB1Wbw4" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-size: 8pt">Par
    Value</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2" id="xdx_4B8_us-gaap--StatementEquityComponentsAxis_custom--CapitalInExcessOfParValueMember_zcORlDZDJTAh" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-size: 8pt">Capital
    in<br /> Excess of<br /> Par Value</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2" id="xdx_4BA_us-gaap--StatementEquityComponentsAxis_us-gaap--RetainedEarningsMember_zsX24slF7NBf" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-size: 8pt">Accumulated<br />
    Earnings</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2" id="xdx_4B0_us-gaap--StatementEquityComponentsAxis_us-gaap--AccumulatedOtherComprehensiveIncomeMember_zzuqBACSQR3k" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-size: 8pt">Other<br />
    Comprehensive<br /> Income</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2" id="xdx_4BE_us-gaap--StatementEquityComponentsAxis_us-gaap--ParentMember_zUooLWTLJow5" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-size: 8pt">Total</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2" id="xdx_4BF_us-gaap--StatementEquityComponentsAxis_us-gaap--NoncontrollingInterestMember_zQwSBLUl4RNd" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-size: 8pt">Non-<br />
    Controlling<br /> Interests</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2" id="xdx_4BB_zKJWriYLldrg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-size: 8pt">Total<br />
    Stockholders&#8217;<br /> Equity</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr style="vertical-align: bottom">
    <td><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td colspan="2"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_43A_c20200101__20201231_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_iS_ztqB6aamIWEk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%; font-weight: bold"><span style="font-size: 8pt">Balance December 31, 2019</span></td><td style="width: 1%; font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td id="xdx_98C_eus-gaap--SharesOutstanding_iS_pid_c20200101__20201231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zqWsEKbHjR6g" title="Balance, shares" style="width: 5%; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2019-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,215,545</ix:nonFraction></span></td><td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="width: 1%; font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="width: 5%; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2019-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,216</ix:nonFraction></span></td><td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="width: 1%; font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="width: 5%; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2019-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">16,437,473</ix:nonFraction></span></td><td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="width: 1%; font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="width: 5%; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2019-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,456,148</ix:nonFraction></span></td><td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="width: 1%; font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="width: 5%; font-weight: bold; text-align: right"><span style="font-size: 8pt">(<ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2019-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">994,610</ix:nonFraction></span></td><td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">)</span></td><td style="width: 1%; font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="width: 5%; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2019-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">17,911,227</ix:nonFraction></span></td><td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="width: 1%; font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="width: 5%; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2019-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,550,149</ix:nonFraction></span></td><td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="width: 1%; font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="width: 5%; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2019-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">20,461,376</ix:nonFraction></span></td><td style="width: 1%; font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_405_eus-gaap--OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_zdztJc8wpav2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-size: 8pt">Translation adjustment</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">&#8212;</span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0497">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0498">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0499">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">122,489</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2020-01-012020-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">122,489</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0502">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">122,489</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_403_eus-gaap--ProfitLoss_zD1qGVrZUrrh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-size: 8pt">Net income</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">&#8212;</span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0505">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0506">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,977,050</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0508">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,977,050</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">606,484</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,583,534</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_403_eus-gaap--StockIssuedDuringPeriodValueNewIssues_zbDzePZWmRef" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-size: 8pt">Common stock issued</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td id="xdx_987_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20200101__20201231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zr9cNFe0rkUk" title="Common stock issued, shares" style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">45,000</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">39,705</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0515">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0516">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2020-01-012020-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">39,750</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0518">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">39,750</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_403_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_zYaVrLD74HJg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-size: 8pt">Distributions to noncontrolling interests</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">&#8212;</span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0523">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0524">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0525">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0526">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0527">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">(<ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">594,882</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">)</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">(<ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">594,882</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">)</span></td></tr>
  <tr id="xdx_401_eus-gaap--AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_zaDeSkIHiLyg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-size: 8pt">Stock-based compensation</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt">&#8212;</span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0531">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">156,012</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0533">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0534">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2020-01-012020-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">156,012</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0536">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">156,012</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_43E_c20210101__20211231_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_iS_zIHQqJlTpxRa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold"><span style="font-size: 8pt">Balance December 31, 2020</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td id="xdx_98A_eus-gaap--SharesOutstanding_iS_pid_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zT5JrIKrpey1" title="Ending balance, shares" style="font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2020-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,260,545</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,261</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">16,633,190</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,433,198</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="font-weight: bold; text-align: right"><span style="font-size: 8pt">(<ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">872,121</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">)</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">21,206,528</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,561,751</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">23,768,279</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_40F_eus-gaap--OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-size: 8pt">Translation adjustment</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">&#8212;</span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0549">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0550">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0551">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,391</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,391</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0554">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,391</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_404_eus-gaap--ProfitLoss_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-size: 8pt">Net income</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">&#8212;</span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0557">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0558">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,449,162</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0560">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,449,162</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">845,095</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,294,257</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_400_eus-gaap--StockIssuedDuringPeriodValueNewIssues_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-size: 8pt">Common stock issued</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td id="xdx_986_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zev4DSMaifz4" title="Common stock issued, shares" style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">94,701</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">94</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,346</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0567">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0568">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,440</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0570">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,440</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_40F_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_zfknogfKDrd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-size: 8pt">Distributions to noncontrolling interests</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">&#8212;</span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0575">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0576">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0577">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0578">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0579">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">(<ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">804,003</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">)</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="text-align: right"><span style="font-size: 8pt">(<ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">804,003</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">)</span></td></tr>
  <tr id="xdx_409_eus-gaap--AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-size: 8pt">Stock-based compensation</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt">&#8212;</span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0583">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">210,112</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0585">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0586">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">210,112</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><span style="-sec-ix-hidden: xdx2ixbrl0588">&#8212;</span></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td><td><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">210,112</ix:nonFraction></span></td><td style="text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  <tr id="xdx_435_c20210101__20211231_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_iE_zcYs8F1x3vYb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold"><span style="font-size: 8pt">Balance December 31, 2021</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td id="xdx_980_eus-gaap--SharesOutstanding_iE_pid_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zMzpqQEps0Tl" title="Ending balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,355,246</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,355</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">16,983,648</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,882,360</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><span style="font-size: 8pt">(<ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">775,730</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">)</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">25,102,633</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,602,843</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td><td style="font-weight: bold"><span style="font-size: 8pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"><span style="font-size: 8pt">$</span></td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><span style="font-size: 8pt"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">27,705,476</ix:nonFraction></span></td><td style="font-weight: bold; text-align: left"><span style="font-size: 8pt">&#160;</span></td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
Notes to Consolidated Financial Statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 22; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->5<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ba_006"></span>FLEXIBLE
SOLUTIONS INTERNATIONAL, INC.<br />
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS<br />
December 31, 2021 and 2020</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(U.S.
Dollars)</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock"><p id="xdx_80F_eus-gaap--BusinessDescriptionAndBasisOfPresentationTextBlock_zAb16u7W6BZ" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>1.
Basis of Presentation</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. <span style="display: none"><span id="xdx_82A_zw9r2219Sbl2">BASIS OF PRESENTATION</span></span></span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
consolidated financial statements include the accounts of Flexible Solutions International, Inc. (the &#8220;Company&#8221;), its wholly-owned
subsidiaries Flexible Fermentation Ltd. , NanoChem Solutions Inc. (&#8220;NanoChem&#8221;), Flexible Solutions Ltd., Flexible Biomass
LP, FS Biomass Inc., NCS Deferred Corp., Natural Chem SEZC Ltd., and InnFlex Holdings Inc. and its <span id="xdx_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20210101__20211231__srt--OwnershipAxis__custom--EnpInvestmentsLlcAndEnpMendotaMember_zrINb05I0R01" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2021-01-012021-12-31_custom_EnpInvestmentsLlcAndEnpMendotaMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>% interest in ENP Investments, LLC
(&#8220;ENP Investments&#8221;) and ENP Mendota, LLC (&#8220;ENP Mendota&#8221;). All inter-company balances and transactions have been
eliminated upon consolidation. The Company was incorporated on May 12, 1998 in the State of Nevada and had no operations until June 30,
1998. In 2019, the Company redomiciled into Alberta, Canada.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
2018, NanoChem completed the purchase of a <span id="xdx_904_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20180101__20181231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zb9uYeATpRi9" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2018-01-012018-12-31_custom_EnpnvestmentsLlcMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>% interest in ENP Investments for an aggregate purchase price of $<span id="xdx_903_eus-gaap--BusinessCombinationConsiderationTransferred1_c20180101__20181231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Purchase price"><ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="From2018-01-012018-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,110,560</ix:nonFraction></span>. An unrelated
party owns the remaining <span id="xdx_90A_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--UnrelatedPartyMember_zkAMniuZWwli" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember_custom_UnrelatedPartyMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">35</ix:nonFraction></span>% interest in ENP Investments, and ENP Investments is consolidated into the financial statements. The outside
investor&#8217;s ownership interest in ENP Investments is included in noncontrolling interests in these consolidated financial statements
from the acquisition date onward. In 2020, ENP Investments increased its investment in ENP Realty from <span id="xdx_90E_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MinimumMember_zbJbDRB6MF6d" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">24</ix:nonFraction></span>% to <span id="xdx_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MaximumMember_zHbG3vIIoMHj" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">100</ix:nonFraction></span>%, making ENP Realty
a wholly-owned subsidiary of ENP Investments. In 2021, ENP Realty was renamed ENP Mendota and is consolidated into the financial statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company and its subsidiaries develop, manufacture and market specialty chemicals which slow the evaporation of water. One product, HEATSAVR&#174;,
is marketed for use in swimming pools and spas where its use, by slowing the evaporation of water, allows the water to retain a higher
temperature for a longer period of time and thereby reduces the energy required to maintain the desired temperature of the water in the
pool. Another product, WATERSAVR&#174;, is marketed for water conservation in irrigation canals, aquaculture, and reservoirs where its
use slows water loss due to evaporation. In addition to the water conservation products, the Company also manufactures and markets water-soluble
chemicals utilizing thermal polyaspartate biopolymers (hereinafter referred to as &#8220;TPAs&#8221;), which are beta-proteins manufactured
from the common biological amino acid, L-aspartic. TPAs can be formulated to prevent corrosion and scaling in water piping within the
petroleum, chemical, utility and mining industries. TPAs are also used as proteins to enhance fertilizers in improving crop yields and
can be used as additives for household laundry detergents, consumer care products and pesticides. The TPA division also manufactures
two nitrogen conservation products for agriculture that slows nitrogen loss from fields.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
outbreak of the novel strain of coronavirus, specifically identified as &#8220;COVID-19&#8221;, has resulted in a widespread health crisis
that has affected economies and financial markets around the world resulting in an economic downturn. This outbreak may also cause staff
shortages, reduced customer demand, increased government regulations or interventions, all of which may negatively impact the business,
financial condition or results of operations of the Company. The duration and impact of the COVID-19 outbreak is unknown at this time
and it is not possible to reliably estimate the length and severity of these developments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 23; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->6<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:SignificantAccountingPoliciesTextBlock"><p id="xdx_80F_eus-gaap--SignificantAccountingPoliciesTextBlock_zRp9kDdyeS34" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>2.
<span>Significant Accounting Policies</span>. <b><span id="xdx_825_zEgljZhfD5sk" style="display: none">SIGNIFICANT ACCOUNTING POLICIES</span></b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
consolidated financial statements have been prepared on a historical cost basis, except where otherwise noted, in accordance with accounting
principles generally accepted in the United States applicable to a going concern and reflect the policies outlined below.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock"><p id="xdx_847_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_z0fbKof6pB61" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)
<i><span id="xdx_866_zEIqvYh3ceg5">Cash and Cash Equivalents</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company considers all highly liquid investments purchased with an original or remaining maturity of less than three months at the date
of purchase to be cash equivalents. Cash and cash equivalents are maintained with several financial institutions.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:InventoryPolicyTextBlock"><p id="xdx_84D_eus-gaap--InventoryPolicyTextBlock_z0ma3OFf0Aii" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
<i><span id="xdx_865_zEaoiY9TyXHb">Inventories and Cost of Sales</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has three major classes of inventory: completed goods, work in progress and raw materials and supplies. In all classes, inventories
are stated at the lower of cost and net realizable value. The Company applies the first-in, first-out or weighted average cost formulae
to inventories in different subsidiaries. Cost of sales includes all expenditures incurred in bringing the goods to the point of sale.
Inventory costs and costs of sales include direct costs of the raw material, inbound freight charges, warehousing costs, handling costs
(receiving and purchasing) and utilities and overhead expenses related to the Company&#8217;s manufacturing and processing facilities.
Shipping and handling charges billed to customers are included in revenue (2021 - $<span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zSVrag0rl4X3" title="Revenue from Contract with Customer, Excluding Assessed Tax"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_us-gaap_ShippingAndHandlingMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">465,493</ix:nonFraction></span>; 2020 &#8211; $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zmWn9LthbdCa" title="Revenue from Contract with Customer, Excluding Assessed Tax"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2020-01-012020-12-31_us-gaap_ShippingAndHandlingMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">427,920</ix:nonFraction></span>). Shipping and handling
costs incurred are included in cost of goods sold (2021 - $<span id="xdx_900_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zB0aamnpVjB7" title="Cost of Goods and Services Sold"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="From2021-01-012021-12-31_us-gaap_ShippingAndHandlingMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,058,674</ix:nonFraction></span>; 2020 &#8211; $<span id="xdx_903_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zgvfzDomXrC3" title="Cost of Goods and Services Sold"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="From2020-01-012020-12-31_us-gaap_ShippingAndHandlingMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,051,588</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy"><p id="xdx_841_eus-gaap--PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_zvNHD6szx3G7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(c)
<i><span id="xdx_866_zyTwkWBDX9l">Allowance for Doubtful Accounts</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company provides an allowance for doubtful accounts when management estimates collectability to be uncertain. Accounts receivable are
continually reviewed to determine which, if any, accounts are doubtful of collection. In making the determination of the appropriate
allowance amount, the Company considers current economic and industry conditions, relationships with each significant customer, overall
customer credit-worthiness and historical experience.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock"><p id="xdx_849_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_z1YulY4myp5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(d)
<i><span id="xdx_867_znxYHWPSLSHd">Property, Equipment, Leaseholds and Intangible Assets</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="FSI:ScheduleOfMethodOfDepreciationTableTextBlock"><p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_z5dWLyYYEZO5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following assets are recorded at cost and depreciated using the methods and annual rates shown below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zlPfzWVw30ke">SCHEDULE OF METHOD OF DEPRECIATION</span></span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 70%; border-collapse: collapse; margin-right: auto">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 55%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 43%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Computer
    hardware</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z44jHLrrTpBi" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_ComputerEquipmentMember" name="FSI:DepreciationMethodUsedAndAnnualRate">30%
    Declining balance</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Furniture
    and fixtures</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zy1kQmquukqi" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_FurnitureAndFixturesMember" name="FSI:DepreciationMethodUsedAndAnnualRate">20%
    Declining balance</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Manufacturing
    equipment</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zq5YxItyna4j" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_MachineryAndEquipmentMember" name="FSI:DepreciationMethodUsedAndAnnualRate">20%
    Declining balance</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Office
    equipment</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ziT4ptdsa0I5" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_OfficeEquipmentMember" name="FSI:DepreciationMethodUsedAndAnnualRate">20%
    Declining balance</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Boat</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z5elPWHeq8mf" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_BoatMember" name="FSI:DepreciationMethodUsedAndAnnualRate">20%
    Declining balance</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Building
    and improvements</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_905_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zV3slMEDjBmf" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_BuildingAndImprovementsMember" name="FSI:DepreciationMethodUsedAndAnnualRate">10%
    Declining balance</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trailer</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_909_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDpKnIp7Srm9" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_TrailerMember" name="FSI:DepreciationMethodUsedAndAnnualRate">30%
    Declining balance</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Automobiles</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zJ7sAc2aaFOc" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_AutomobilesMember" name="FSI:DepreciationMethodUsedAndAnnualRate">Straight-line
    over 5 years</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Patents</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_zUQGnoGcumhf" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_PatentsMember" name="FSI:DepreciationMethodUsedAndAnnualRate">Straight-line
    over 17 years</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Technology</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zTRMGRr7mbz5" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_TechnologyEquipmentMember" name="FSI:DepreciationMethodUsedAndAnnualRate">Straight-line
    over 10 years</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Leasehold
    improvements</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zIjK1WBJXIP5" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_LeaseholdImprovementsMember" name="FSI:DepreciationMethodUsedAndAnnualRate">Straight-line
    over lease term</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Customer
    relationships &#8211; ENP Investments</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--CustomerRelationshipsENPInvestmentsMember_z58VczgrDlqj" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_CustomerRelationshipsENPInvestmentsMember" name="FSI:DepreciationMethodUsedAndAnnualRate">Straight-line
    over 15 years</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Software
    &#8211; ENP Investments</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareENPInvestmentsMember_z7yQ8qdk10R" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_SoftwareENPInvestmentsMember" name="FSI:DepreciationMethodUsedAndAnnualRate">Straight-line
    over 3 years</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  </table>
</ix:nonNumeric><p id="xdx_8A7_zSwoGnG8Yfga" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 24; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->7<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"><p id="xdx_848_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zphhnjuMvRyc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">e)
<i><span id="xdx_86C_zXyL7qsob5K7">Impairment of Long-Lived Assets</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
accordance with FASB Codification Topic 360, <i>&#8220;Property, Plant and Equipment&#8221; </i>(ASC 360), the Company reviews long-lived
assets, including, but not limited to, property, equipment and leaseholds, patents and other assets, for impairment annually or whenever
events or changes in circumstances indicate the carrying amounts of assets may not be recoverable. The carrying value of long-lived assets
is assessed for impairment by evaluating operating performance and future undiscounted cash flows of the underlying assets. If the expected
future cash flows of an asset is less than its carrying value, an impairment measurement is indicated. Impairment charges are recorded
to the extent that an asset&#8217;s carrying value exceeds its fair value. Accordingly, actual results could vary significantly from
such estimates. There were no impairment charges during the periods presented.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock"><p id="xdx_84C_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_zi5V221GjRA7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(f)
<i><span id="xdx_86D_z177sSOyO1D8">Foreign Currency</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
functional currency of the Company is the U.S. dollar. The functional currency of three of the Company&#8217;s subsidiaries is the Canadian
dollar. The translation of the Canadian dollar to the reporting currency of the Company, the U.S. dollar, is performed for assets and
liabilities using exchange rates in effect at the balance sheet date. Revenue and expense transactions are translated using average exchange
rates prevailing during the year. Translation adjustments arising on conversion of the Company&#8217;s financial statements from the
subsidiary&#8217;s functional currency, Canadian dollars, into the reporting currency, U.S. dollars, are excluded from the determination
of income (loss) and are disclosed as other comprehensive income in the consolidated statements of income and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Foreign
exchange gains and losses relating to transactions not denominated in the applicable local currency are included in operating income
(loss) if realized during the year and in comprehensive income (loss) if they remain unrealized at the end of the year.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock"><p id="xdx_84F_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zOjsGQ63xU6h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(g)
<i><span id="xdx_866_zrnFwXrHme95">Revenue Recognition</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company generates revenue primarily from energy and water conservation products and biodegradable polymers, as further discussed in Note
19.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company follows a five-step model for revenue recognition. The five steps are: (1) identification of the contract(s) with the customer,
(2) identification of the performance obligation(s) in the contract(s), (3) determination of the transaction price, (4) allocation of
the transaction price to the performance obligation, and (5) recognition of revenue when (or as) the performance obligation is satisfied.
The Company has fulfilled its performance obligations when control transfers to the customer, which is generally at the time the product
is shipped since risk of loss is transferred to the purchaser upon delivery to the carrier. For shipments which are F.O.B. shipping point,
the Company has elected to account for shipping and handling activities as a fulfillment cost rather than as an additional promised service
and performance obligation.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Since
the Company&#8217;s inception, product returns have been insignificant; therefore, no provision has been established for estimated product
returns.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Deferred
revenues consist of products sold to distributors with payment terms greater than the Company&#8217;s customary business terms due to
lack of credit history or operating in a new market in which the Company has no prior experience. The Company defers the recognition
of revenue until the criteria for revenue recognition has been met and payments become due or cash is received from these distributors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 25; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->8<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="FSI:StockIssuedInExchangeForServicesPolicyTextBlock"><p id="xdx_84B_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zAqkjZWRvUx7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(h)
<i><span id="xdx_861_z3cB9HFjbrOb">Stock Issued in Exchange for Services</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s common stock issued in exchange for services is valued at estimated fair market value based upon trading prices of the
Company&#8217;s common stock on the dates of the stock transactions. The corresponding expense of the services rendered is recognized
over the period that the services are performed.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:CompensationRelatedCostsPolicyTextBlock"><p id="xdx_848_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zsGE27Jo2VMa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">i)
<i><span id="xdx_865_zlbIfOwhXJZk">Stock-based Compensation</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognizes compensation expense for all share-based payments in accordance with FASB Codification Topic 718, <i>Compensation
&#8212; Stock Compensation</i>, (ASC 718). Under the fair value recognition provisions of ASC 718, the Company recognizes share-based
compensation expense, net of an estimated forfeiture rate, over the requisite service period of the award.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value at grant date of stock options is estimated using the Black-Scholes option-pricing model. Compensation expense is recognized
on a straight-line basis over the stock option vesting period based on the estimated number of stock options that are expected to vest.
Shares are issued from treasury upon exercise of stock options.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ComprehensiveIncomePolicyPolicyTextBlock"><p id="xdx_841_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zZQrPnEebFff" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(j)
<i><span id="xdx_864_z2GP0Agodi6a">Other Comprehensive Income</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
comprehensive income refers to revenues, expenses, gains and losses that under generally accepted accounting principles are included
in comprehensive income, but are excluded from net income as these amounts are recorded directly as an adjustment to stockholders&#8217;
equity. The Company&#8217;s other comprehensive income is comprised only of unrealized foreign exchange gains and losses.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:EarningsPerSharePolicyTextBlock"><p id="xdx_841_eus-gaap--EarningsPerSharePolicyTextBlock_zKUqclfujMLk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(k)
<i><span id="xdx_864_zKOSKwGhOYIi">Income Per Share</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Basic
earnings per share is computed by dividing income available to common stockholders by the weighted average number of common shares outstanding
in the period. Diluted earnings per share are calculated giving effect to the potential dilution of the exercise of options and warrants.
Common equivalent shares, composed of incremental common shares issuable upon the exercise of stock options and warrants are included
in diluted net income per share to the extent that these shares are dilutive. Common equivalent shares that have an anti-dilutive effect
on net income per share have been excluded from the calculation of diluted weighted average shares outstanding for the years ended December
31, 2021 and 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:UseOfEstimates"><p id="xdx_841_eus-gaap--UseOfEstimates_zMbsb2EoCDn4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">l)
<i><span id="xdx_864_zsve7NV2tYL5">Use of Estimates</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States requires
management to make estimates and assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated
financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from
those estimates and would impact the results of operations and cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Estimates
and underlying assumptions are reviewed at each period end. Revisions to accounting estimates are recognized in the period in which the
estimates are revised and in any future periods affected.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Significant
areas requiring the use of management estimates include assumptions and estimates relating to the valuation of goodwill and intangible
assets, asset impairment analysis, share-based payments, valuation allowances for deferred income tax assets, determination of useful
lives of property, equipment and leaseholds and intangible assets, recoverability of accounts receivable, recoverability of investments,
discount rates for right of use assets and the valuation of inventory.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 26; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->9<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:FairValueOfFinancialInstrumentsPolicy"><p id="xdx_84B_eus-gaap--FairValueOfFinancialInstrumentsPolicy_z0BH9V9e5lSd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 35.45pt; text-align: justify; text-indent: 0.55pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(m)
<i><span id="xdx_86A_zGAaOHYPJVZ6">Fair Value of Financial Instruments</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fair
value is defined as the exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal
or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.
Valuation techniques used to measure fair value must maximize the use of observable inputs and minimize the use of unobservable inputs.
The standard describes a fair value hierarchy based on three levels of inputs described below, of which the first two are considered
observable and the last unobservable, that may be used to measure fair value.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
    1 &#8211; Quoted prices in active markets for identical assets or liabilities.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
    2 &#8211; Inputs other than Level 1 that are observable, either directly or indirectly, such as quoted prices for similar assets
    or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable
    market data for substantially the full term of the assets or liabilities.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
    3 &#8212; Unobservable inputs that are supported by little or no market activity which is significant to the fair value of the assets
    or liabilities.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair values of cash and cash equivalents, term deposits, accounts receivable, accounts payable, accrued liabilities and the short term
line of credit for all periods presented approximate their respective carrying amounts due to the short term nature of these financial
instruments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of the long term debt for all periods presented approximates their respective carrying amounts due to these financial instruments
being at market rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:CommitmentsAndContingenciesPolicyTextBlock"><p id="xdx_849_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zx06inet32O9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(n)
<i><span id="xdx_86E_zDRybwmA0BIb">Contingencies</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certain
conditions may exist as of the date the consolidated financial statements are issued which may result in a loss to the Company but which
will only be resolved when one or more future events occur or fail to occur. The Company&#8217;s management and its legal counsel assess
such contingent liabilities, and such assessment inherently involves an exercise of judgment. In assessing loss contingencies related
to legal proceedings that are pending against the Company or unasserted claims that may result in such proceedings, the Company&#8217;s
legal counsel evaluates the perceived merits of any legal proceedings or unasserted claims as well as the perceived merits of the amount
of relief sought or expected to be sought therein.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If
the assessment of a contingency indicates that it is probable that a material loss has been incurred and the amount of the liability
can be estimated, the estimated liability would be accrued in the Company&#8217;s consolidated financial statements. If the assessment
indicates that a potential material loss contingency is not probable, but is reasonably possible, or is probable but cannot be estimated,
then the nature of the contingent liability, together with an estimate of the range of possible loss if determinable and material, would
be disclosed.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Loss
contingencies considered remote are generally not disclosed unless they involve guarantees, in which case the guarantees would be disclosed.
Legal fees associated with loss contingencies are expensed as incurred.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:IncomeTaxPolicyTextBlock"><p id="xdx_843_eus-gaap--IncomeTaxPolicyTextBlock_z0IrhDCYYHYi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(o)
<i><span id="xdx_86B_z8jDe7cyMYIi">Income Taxes</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income
taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for the expected future
tax consequences attributable to temporary differences between the financial statement carrying amounts of existing assets and liabilities
and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using
enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes
the enactment date. Deferred tax assets are reduced by a valuation allowance so that the assets are recognized only to the extent that
when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will be realized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
accordance with FASB ASC 740 &#8220;<i>Income taxes</i>&#8221; under the liability method, it is the Company&#8217;s policy to provide
for uncertain tax positions and the related interest and penalties based upon management&#8217;s assessment of whether a tax benefit
is more likely than not to be sustained upon examination by tax authorities. At December 31, 2021, the Company believes it has appropriately
accounted for any unrecognized tax benefits. To the extent the Company prevails in matters for which a liability for an unrecognized
benefit is established or is required to pay amounts in excess of the liability, the Company&#8217;s effective tax rate in a given financial
statement period may be affected. Interest and penalties associated with the Company&#8217;s tax positions are recorded as interest expense
in the consolidated statements of operations and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 27; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->10<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ConcentrationRiskCreditRisk"><p id="xdx_84B_eus-gaap--ConcentrationRiskCreditRisk_zI05byQ0hGPg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(p)
<i><span id="xdx_868_z1ZwYcJLZdke">Risk Management</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s credit risk is primarily attributable to its accounts receivable. The amounts presented in the accompanying consolidated
balance sheets are net of allowances for doubtful accounts, estimated by the Company&#8217;s management based on prior experience and
the current economic environment. The Company is exposed to credit-related losses in the event of non-payment by customers. Credit exposure
is minimized by dealing with only credit worthy counterparties. Revenue for the Company&#8217;s three primary customers totaled $<span id="xdx_902_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zOS4EpWjI00g" title="Revenue from Contract with Customer, Excluding Assessed Tax"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">16,917,947</ix:nonFraction></span>
(<span id="xdx_902_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zfsy62oWCZHb" title="[custom:ConcentrationRiskThresholdPercentage]"><ix:nonFraction name="FSI:ConcentrationRiskThresholdPercentage" contextRef="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">49</ix:nonFraction></span>%) for the year ended December 31, 2021 (2020 - $<span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zjszlIo1nerc" title="Revenue from Contract with Customer, Excluding Assessed Tax"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">14,713,127</ix:nonFraction></span> or <span id="xdx_90E_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zuInXhPSLzB5" title="[custom:ConcentrationRiskThresholdPercentage]"><ix:nonFraction name="FSI:ConcentrationRiskThresholdPercentage" contextRef="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">47</ix:nonFraction></span>%). Accounts receivable for the Company&#8217;s three primary customers
totaled $<span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z7SYKm5Nz7K" title="Accounts Receivable, after Allowance for Credit Loss"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2021-12-31_custom_ThreePrimaryCustomersMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,940,995</ix:nonFraction></span> (<span id="xdx_909_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zMBGqPdzI448" title="[custom:ConcentrationRiskThresholdPercentage]"><ix:nonFraction name="FSI:ConcentrationRiskThresholdPercentage" contextRef="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">69</ix:nonFraction></span>%) at December 31, 2021 (2020 - $<span id="xdx_902_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zz2ZhwbIOSQg" title="Accounts Receivable, after Allowance for Credit Loss"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2020-12-31_custom_ThreePrimaryCustomersMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,986,284</ix:nonFraction></span> or <span id="xdx_90D_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zt2tPUAnV8O7" title="[custom:ConcentrationRiskThresholdPercentage]"><ix:nonFraction name="FSI:ConcentrationRiskThresholdPercentage" contextRef="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">68</ix:nonFraction></span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
credit risk on cash and cash equivalents is limited because the Company limits its exposure to credit loss by placing its cash and cash
equivalents with major financial institutions. The Company maintains cash balances at financial institutions which at times exceed federally
insured amounts. The Company has not experienced any losses in such accounts.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company is exposed to foreign exchange and interest rate risk to the extent that market value rate fluctuations materially differ from
financial assets and liabilities, subject to fixed long-term rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
order to manage its exposure to foreign exchange risks, the Company is closely monitoring the fluctuations in the foreign currency exchange
rates and the impact on the value of cash and cash equivalents, accounts receivable, and accounts payable and accrued liabilities. The
Company has not hedged its exposure to currency fluctuations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company is exposed to interest rate risk to the extent that the fair value or future cash flows for financial liabilities will fluctuate
as a result of changes in market interest rates. The Company is exposed to interest rate risk on its long-term debt.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
order to manage its exposure to interest rate risk, the Company is closely monitoring fluctuations in market interest risks and will
refinance its long-term debt where possible to obtain more favourable rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:EquityMethodInvestmentsPolicy"><p id="xdx_84E_eus-gaap--EquityMethodInvestmentsPolicy_zrNend6p3aPd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(q)
<i><span id="xdx_863_zZwSBY8hy1Rd">Equity Method Investment</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company accounts for investments using the equity method of accounting if the investment provides the Company the ability to exercise
significant influence, but not control, over the investee. <span id="xdx_909_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20210101__20211231_zqwPvvr5RrQk" title="Equity Method Investment, Description of Principal Activities"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" name="us-gaap:EquityMethodInvestmentDescriptionOfPrincipalActivities">Significant influence is generally deemed to exist if the Company&#8217;s
ownership interest in the voting stock of the investee ranges between 20% and 50%, although other factors, such as representation on
the investee&#8217;s board of directors, are considered in determining whether the equity method of accounting is appropriate.</ix:nonNumeric> </span>Under
the equity method of accounting, the investment is initially recorded at cost in the consolidated balance sheets under other assets and
adjusted for dividends received and the Company&#8217;s share of the investee&#8217;s earnings or losses together with other-than-temporary
impairments which are recorded through other income (loss), net in the consolidated statements of income and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy"><p id="xdx_84E_eus-gaap--GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy_zUQPenO0Idsa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(r)
<i><span id="xdx_866_zXAPsxvAASYd">Goodwill and intangible assets</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
represents the excess of the purchase price of an acquired entity over the amounts assigned to the assets acquired and liabilities assumed.
Goodwill is not amortized, but is reviewed for impairment annually or more frequently if certain impairment conditions arise. The Company
performs an annual goodwill impairment review in the fourth quarter of each year at the reporting unit level. The evaluation begins with
a qualitative assessment of the factors that could impact the significant inputs used to estimate fair value. If after performing the
qualitative assessment, it is determined that it is more likely than not that the fair value of a reporting unit is greater than its
carrying amount, including goodwill, then no further analysis is necessary. However, if the results of the qualitative test are unclear,
the Company performs a quantitative test, which involves comparing the fair value of a reporting unit with its carrying amount, including
goodwill. The Company uses an income-based valuation method, determining the present value of future cash flows, to estimate the fair
value of a reporting unit. If the fair value of a reporting unit exceeds its positive carrying amount, goodwill of the reporting unit
is considered not impaired, and no further analysis is necessary. If the fair value of the reporting unit is less than its carrying amount,
goodwill impairment would be recognized equal to the amount of the carrying value in excess of the reporting unit&#8217;s fair value,
limited to the total amount of goodwill allocated to the reporting unit.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.05in; text-align: justify; text-indent: 0.3in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 28; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->11<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Intangible
assets primarily include trademarks and trade secrets with indefinite lives and customer-relationships with finite lives. Intangible
assets with indefinite lives are not amortized but are tested for impairment on an annual basis, or more frequently if indicators of
impairment are present. Indefinite lived intangible assets are assessed using either a qualitative or a quantitative approach. The qualitative
assessment evaluates factors including macro-economic conditions, industry and company-specific factors, legal and regulatory environments,
and historical company performance in assessing fair value. If it is determined that it is more likely than not that the fair value of
the intangible asset is less than its carrying value, a quantitative test is then performed. Otherwise, no further testing is required.
When using a quantitative approach, the Company compares the fair value of the intangible asset to its carrying amount, including goodwill.
If the estimated fair value of the intangible asset is less than the carrying amount of the intangible asset, impairment is indicated,
requiring recognition of an impairment charge for the differential.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Qualitative
assessments of goodwill and indefinite-lived intangible assets were performed in 2021 and 2020. Based on the results of the assessment,
it was determined that it is more likely than not the reporting unit, customer lists and trademarks had a fair value in excess of their
carrying value. Accordingly, no further impairment testing was completed and no impairment charges related to goodwill or indefinite-lived
intangibles were recognized during the year ended December 31, 2021 or 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Finite-lived
intangible assets are amortized on a straight-line basis over their estimated useful lives. The Company reviews for impairment indicators
of finite-lived intangibles and other long-lived assets as described in the &#8220;Impairment of Long Lived Assets&#8221; significant
accounting policy.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"><p id="xdx_849_eus-gaap--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zpXvQfT1zgll" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(s)
<i><span id="xdx_86C_zbHK8bRW3XD2">Recent Accounting Pronouncements</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has implemented all applicable new accounting pronouncements that are in effect. Those pronouncements did not have any material
impact on the consolidated financial statements unless otherwise disclosed, and the Company does not believe that there are any other
new accounting pronouncements that have been issued that might have a material impact on its financial position or results of operations.</span></p>

</ix:nonNumeric><p id="xdx_850_zAgPzyBaYWj3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:LesseeOperatingLeasesTextBlock"><p id="xdx_80C_eus-gaap--LesseeOperatingLeasesTextBlock_znP3bIgs0Q51" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>3.
<span>Leases <b><span id="xdx_829_z29kXnC3Cuq2" style="display: none">LEASES</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accounting
and reporting guidance for leases requires that leases be evaluated and classified as either operating or finance leases by the lessee
and as either operating, sales-type or direct financing leases by the lessor. For leases with terms greater than 12 months, the Company
records the related right-of-use (&#8220;ROU&#8221;) asset and lease obligation at the present value of lease payments over the term.
Leases may include fixed rental escalation clauses, renewal options and / or termination options that are factored into the determination
of lease payments when appropriate. The Company&#8217;s operating leases are included in ROU assets, lease liabilities-current portion
and lease liability-less current portion in the accompanying consolidated balance sheets. ROU assets represent the Company&#8217;s right
to use an underlying asset for the lease term, and lease liabilities represent the obligation to make lease payments arising from the
lease. The Company&#8217;s leases do not usually provide a readily determinable implicit rate; therefore, an estimate of the Company&#8217;s
incremental borrowing rate is used to discount the lease payments based on information available at the lease commencement date. The
discount rate used was <span id="xdx_909_eus-gaap--LesseeOperatingLeaseDiscountRate_iI_pid_dp_c20211231_zz26ykbIW5Rf" title="Operating leases discount rate"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseDiscountRate" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">5.5</ix:nonFraction></span>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 29; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->12<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="FSI:SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock"><p id="xdx_893_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_znvdiWs5BOz4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below summarizes the right-of-use asset and lease liability for the year ended December 31, 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BE_zmYTjilXJPh8">SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: 0.5in; border-collapse: collapse; width: 90%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline; font-weight: bold; text-align: left">Right of Use Assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 84%">Balance at December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20200101__20201231_zxoFF5obpXR2" title="Right of Use Assets Beginning Balance" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="AsOf2019-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">789,205</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Addition</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_ecustom--OperatingLeaseAssetsAddition_pp0p0_c20200101__20201231_z8tPdp5n7ouh" title="Addition" style="text-align: right"><ix:nonFraction name="FSI:OperatingLeaseAssetsAddition" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">260,661</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Termination</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--OperatingLeasesAssetsTermination_c20200101__20201231_pp0p0" title="Termination" style="text-align: right">(<ix:nonFraction name="FSI:OperatingLeasesAssetsTermination" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">234,980</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20200101__20201231_z4wEdD1YCbV1" title="Depreciation" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">331,773</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance at December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zPKax8oCy2oj" title="Right of Use Assets Ending Balance" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">483,113</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zLbzOPUeSl2g" title="Depreciation" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">265,846</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20210101__20211231_zAFXdNrBCaU8" title="Right of Use Assets Ending Balance" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">217,267</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-decoration: underline; font-weight: bold; text-align: left">Lease Liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance at December 31, 2019</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_985_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20200101__20201231_zJ22uqJEIwc6" title="Lease Liability Beginning Balance" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="AsOf2019-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">789,205</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Addition</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--OperatingLeasesLiabilityAddition_c20200101__20201231_pp0p0" title="Addition" style="text-align: right"><ix:nonFraction name="FSI:OperatingLeasesLiabilityAddition" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">260,661</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Termination</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_ecustom--OperatingLeasesLiabilityTermination_pp0p0_c20200101__20201231_zsyS7IMrCghj" title="Termination" style="text-align: right">(<ix:nonFraction name="FSI:OperatingLeasesLiabilityTermination" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">234,980</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Lease interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--LeaseInterestExpense_c20200101__20201231_pp0p0" title="Lease interest expense" style="text-align: right"><ix:nonFraction name="FSI:LeaseInterestExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">53,768</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Payments</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20200101__20201231_zco2cj0Ysagi" title="Payments" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OperatingLeasePayments" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">385,541</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance at December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_980_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_z63JfCGl6Jr1" title="Lease Liability Ending Balance" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">483,113</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Lease interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_zctDyBbRYAh7" title="Lease interest expense" style="text-align: right"><ix:nonFraction name="FSI:LeaseInterestExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">22,057</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Payments</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20210101__20211231_z9R3fmOKH9wg" title="Payments" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OperatingLeasePayments" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">287,903</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance at December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_982_eus-gaap--OperatingLeaseLiability_iE_pp0p0_c20210101__20211231_z8d0g1z3ncfa" title="Lease Liability Ending Balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">217,267</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Short-term portion</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20211231_zKSKEoTDAhg4" title="Short-term portion" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">77,715</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Long-term portion</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20211231_z3iPAaXNtF67" title="Long-term portion" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">139,552</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_982_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20211231_zVOwesMLPETe" title="Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">217,267</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AB_z5jnoL00lvC" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock"><p id="xdx_892_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_z4THXWU4keZ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Undiscounted
rent payments are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zdve3Wfqljr">SCHEDULE OF UNDISCOUNTED RENT PAYMENTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2022</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_499_20211231_zP2IDO4kxUn3" style="text-align: right">78,240</td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_ztTzIN3bp74h" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">78,240</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_pp0p0_maLOLLPz1VZ_zRiGeaZt7Cw5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">77,100</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_pp0p0_maLOLLPz1VZ_zu52hjG56X59" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">70,440</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_pp0p0_maLOLLPz1VZ_zMDIJXaMjux2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">2025</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">71,940</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_pp0p0_mtLOLLPz1VZ_zyqqLngmSJv" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Total</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">297,720</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_pp0p0_di_zPwpe5PojJug" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">Impact of discounting</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">80,453</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify; padding-bottom: 1.5pt">Lease liability, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">217,267</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A4_z7YN6rlD21Kg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:FinancingReceivablesTextBlock"><p id="xdx_806_eus-gaap--FinancingReceivablesTextBlock_zGblIiwEj8Kh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>4.
<span>Accounts Receivable <b><span id="xdx_82A_zG5CuoRGhY5g" style="display: none">ACCOUNTS RECEIVABLE</span></b></span></b></span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock"><p id="xdx_893_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_zKbmmJlrLhFg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zGEO4ZSBJohl">SCHEDULE OF ACCOUNTS RECEIVABLE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_497_20211231_zVVUF86G12r6" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20201231_zAD8vqYveWMj" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--AccountsReceivableGross_i02I_pp0p0_maAANRNzCGO_zP6m6jwLhh8i" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Accounts receivable</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableGross" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,403,308</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableGross" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,161,249</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_i02NI_pp0p0_di_msAANRNzCGO_z6AUihP7p02e" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Allowances for doubtful accounts</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">273,979</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">271,436</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--AccountsAndNotesReceivableNet_i02TI_pp0p0_mtAANRNzCGO_zlrdv5AfO9Gi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total accounts receivable</span></td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AccountsAndNotesReceivableNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,129,329</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AccountsAndNotesReceivableNet" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,889,813</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A6_zXda4wtCfTzb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:InventoryDisclosureTextBlock"><p id="xdx_80E_eus-gaap--InventoryDisclosureTextBlock_zHuucQHW0dj3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>5.
<span>Inventories <span id="xdx_826_zNS0FrCxPhK" style="display: none">INVENTORIES</span></span></b></span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock"><p id="xdx_892_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zE1zvLRMz1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BF_zn3wFWQpBjS1">SCHEDULE OF INVENTORIES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_495_20211231_z1QygdhdEd0a" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20201231_zKTPU8G0ztF7" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_z7kwJE3yLnN5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Completed goods</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,417,829</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,393,794</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--InventoryWorkInProcess_iI_pp0p0_maINzDiN_z5fX5WuBiQaa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Work in progress</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0789">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryWorkInProcess" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">152,595</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_zjw3Jqeplpka" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Raw materials and supplies</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:InventoryRawMaterialsAndSupplies" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,084,176</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:InventoryRawMaterialsAndSupplies" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,826,087</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pp0p0_mtINzDiN_zCQYjA5oYjM2" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;<span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total inventory</span>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,502,005</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,372,476</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A1_z7fbzG6KljI4" style="font: 10pt Times New Roman, Times, Serif; display: none; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock"><p id="xdx_80E_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_zFBAUaF1rbOg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>6.
<span>Property, Equipment and Leaseholds <span style="font-variant: small-caps"><span id="xdx_82A_zW5zVjxlF9Ic" style="display: none">PROPERTY, EQUIPMENT AND LEASEHOLDS</span></span></span></b></span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:PropertyPlantAndEquipmentTextBlock"><p id="xdx_891_eus-gaap--PropertyPlantAndEquipmentTextBlock_zQf95OB29Tm1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_zsxJFHuZlLil">&#160;SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2021</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2021</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Cost</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Net</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: left">Buildings and improvements</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6IagJkkWm9g" title="Cost" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_custom_BuildingAndImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,823,708</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6OjoO26Hlh4" title="Accumulated Depreciation" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_custom_BuildingAndImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,983,589</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z3mjqj8tjmug" title="Property, Plant and Equipment, Net, Total" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_custom_BuildingAndImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,840,119</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zQVdUD9JALMk" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">196,255</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zBd3jdxS1nYj" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">71,258</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zRckIAqSFJCf" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">124,997</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Computer hardware</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zmgYMeTPqEqf" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">43,605</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zPEhHTvJpyj1" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">42,456</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zK9HmOwOT2g" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,149</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Furniture and fixtures</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zvSHEQeZAS59" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_FurnitureAndFixturesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">130,658</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zx2EFt0qBr4e" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_FurnitureAndFixturesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">106,101</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_z0rez7RsNyOc" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_FurnitureAndFixturesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">24,557</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zVZhlKwdbxc" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,872</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zK3HxneSE3pd" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,155</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ztskZy3WZ2Nc" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">717</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zYi4XmmSWXd6" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,867,799</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z9MVXMcxdK84" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,171,699</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5dSPJOg1B07" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,696,100</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Trailer</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z5xSMZcBgqfc" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,463</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_znuuJ3b0wh2i" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,532</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zEvR7mwu2hGa" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,931</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z9O2MlnIF4Pg" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">34,400</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zD6wxgIt3Gqf" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">26,284</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z4qRlMy50HQd" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,116</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zU4rxGL1Z372" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">88,872</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl8VjxDx7Lj3" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">88,872</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zvkHbBzEjCT2" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0854">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zONCi4vNHbl7" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">107,759</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zLO38p5X7nUi" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">107,759</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zDaZB9A7whz4" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0860">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Land</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zzWsQk3HAr82" title="Cost" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_LandMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">234,027</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zAUOpsFmZx5f" title="Accumulated Depreciation" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0864">&#8212;</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zxcnFD2XuiCk" title="Property, Plant and Equipment, Net, Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_LandMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">234,027</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_c20211231_pp0p0" title="Cost" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,538,418</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_c20211231_pp0p0" title="Accumulated Depreciation" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,606,705</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentNet_c20211231_pp0p0" title="Property, Plant and Equipment, Net, Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,931,713</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 30; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->13<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2020</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2020</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Cost</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Net</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: left">Buildings and improvements</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z2xggdUxPDeh" title="Cost" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_custom_BuildingAndImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,798,370</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zo8xUD4jTwJe" title="Accumulated Depreciation" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_custom_BuildingAndImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,836,142</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zNtgRDDxMezh" title="Property, Plant and Equipment, Net, Total" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_custom_BuildingAndImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,962,228</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zdiNLCfbyWbb" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">180,956</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zUpjUOkzKdC4" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">61,266</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zvQGB6Ir6aG4" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">119,690</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Computer hardware</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zdZLtO6di8Kj" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">43,593</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zUnPMa1ngME5" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">41,957</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zy2OmZiRKvLk" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,636</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Furniture and fixtures</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zwj9r7Oc7Wdj" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_us-gaap_FurnitureAndFixturesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">111,145</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zmHqBqEifps2" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_us-gaap_FurnitureAndFixturesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">101,186</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zX4z5NxNUWr8" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_us-gaap_FurnitureAndFixturesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,959</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zGplvNwQi9D5" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,864</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zNL0aOoPiWd8" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">971</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zIjBL02ru4n6" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">893</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5vUCDmx9rr3" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,154,425</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_za1nGbSr0ark" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,573,748</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zv48BQLN7kjc" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,580,677</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Trailer</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zJQj9SaHqVMi" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,422</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z33mqDH9afzl" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,675</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zaJ9uGg4oSIg" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,747</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zyGRlJFh5Z4b" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">34,400</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z1qymRSduX0f" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">24,255</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zWMVB0Js2Jl" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,145</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl30RkG2bga7" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">88,872</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_ziGsCPADoXdj" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">87,205</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zuGAiOKNUbTg" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,667</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zYuTbx1QTWJh" title="Cost" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_us-gaap_DevelopedTechnologyRightsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">107,295</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zshI1XyfkMj6" title="Accumulated Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_us-gaap_DevelopedTechnologyRightsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">107,295</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zT6a0EGpDXw7" title="Property, Plant and Equipment, Net, Total" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0932">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Land</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_ze1fLkmOpADe" title="Cost" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_us-gaap_LandMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">452,399</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zZ3jJkVGG89l" title="Accumulated Depreciation" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0936">&#8212;</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_z11ex2owSN05" title="Property, Plant and Equipment, Net, Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31_us-gaap_LandMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">452,399</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231_z87QSSWhFWn" title="Cost" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">11,982,741</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231_z2K9lJlKZjN4" title="Accumulated Depreciation" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,840,700</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231_zoy0Ntvw4Uc2" title="Property, Plant and Equipment, Net, Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,142,041</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A6_zr6fWGJTWzOg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amount
of depreciation expense for 2021: $<span id="xdx_903_eus-gaap--Depreciation_pp0p0_c20210101__20211231_zzH8kidXiEmb" title="Depreciation"><ix:nonFraction name="us-gaap:Depreciation" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">773,497</ix:nonFraction></span> (2020: $<span id="xdx_905_eus-gaap--Depreciation_pp0p0_c20200101__20201231_z3BTW44AyOCe" title="Depreciation"><ix:nonFraction name="us-gaap:Depreciation" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">659,233</ix:nonFraction></span>) and is included in cost of sales in the consolidated statements of income
and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, <span id="xdx_909_eus-gaap--AreaOfLand_iI_usqft_c20210112_zCiINoHCl5Yj" title="Area of land"><ix:nonFraction name="us-gaap:AreaOfLand" contextRef="AsOf2021-01-12" format="ixt:numdotdecimal" decimals="INF" unitRef="sqft">3.3</ix:nonFraction></span> acres of cleared and undeveloped land in Taber, AB Canada was disposed of for proceeds of $<span id="xdx_909_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zIYOKH0si0O8"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfMachineryAndEquipment" contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">263,380</ix:nonFraction></span>
($<span id="xdx_901_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zeZ32Tpyne6i"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfMachineryAndEquipment" contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="CAD">333,899</ix:nonFraction></span>CAD). With a cost of $<span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zk3wCFQo6ns1" title="Cost"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">219,318</ix:nonFraction></span> ($<span id="xdx_900_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_uCAD_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z8w8qCDq3YL5" title="Cost"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="CAD">278,040</ix:nonFraction></span>CAD) the Company recognized a gain of $<span id="xdx_900_ecustom--GainOnInvestments_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z4rpbvCnd9s" title="Recognized gains"><ix:nonFraction name="FSI:GainOnInvestments" contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">44,330</ix:nonFraction></span> ($<span id="xdx_90D_ecustom--GainOnInvestments_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z3bKEZNqzoO7"><ix:nonFraction name="FSI:GainOnInvestments" contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="CAD">55,859</ix:nonFraction></span>CAD) on the disposal. During the
year ended December 31, 2020, equipment with a cost of $<span id="xdx_906_eus-gaap--PropertyPlantAndEquipmentGross_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_pp0p0" title="Cost"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2020-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">79,517</ix:nonFraction></span> and accumulated depreciation of $<span id="xdx_909_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zPIK1xoqJnz4" title="Accumulated depreciation"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2020-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">64,218</ix:nonFraction></span> was disposed for proceeds of $<span id="xdx_909_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_c20200101__20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z4yAs4pLZ95k" title="Proceed for disposal"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfMachineryAndEquipment" contextRef="From2020-01-012020-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">24,789</ix:nonFraction></span>.
The Company recognized a gain of $<span id="xdx_903_eus-gaap--GainLossOnSaleOfPropertyPlantEquipment_pp0p0_c20200101__20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zQW3PmksIJj9" title="Gain on disposal"><ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" contextRef="From2020-01-012020-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,490</ix:nonFraction></span> on the disposal.</span></p>
<!-- Field: Split-Segment; Name: 001 -->
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:IntangibleAssetsDisclosureTextBlock"><p id="xdx_803_eus-gaap--IntangibleAssetsDisclosureTextBlock_zj1C36xo4Dqe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>7.
<span>Patents <b><span id="xdx_82D_zi5nuLuxdArl" style="display: none">PATENTS</span></b></span></b></span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"><p id="xdx_896_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zou6aUfzVBoe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BB_zDX8DZWv8Rt1" style="display: none">SCHEDULE OF PATENTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2021</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Accumulated <br /> Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2021</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; padding-bottom: 1.5pt">Patents</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zgxPltbff797" title="Patents, Cost" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedPatentsGross" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">208,079</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_z0UJKjUecFJc" title="Accumulated Amortization" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">194,380</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zxzh9NVo05Pd" title="Patents, Net" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,699</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2020</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Accumulated <br /> Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2020</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; padding-bottom: 1.5pt">Patents</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_98F_eus-gaap--FiniteLivedPatentsGross_c20201231_pp0p0" title="Patents, Cost" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedPatentsGross" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">208,211</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20201231_zZTlu66uBsV1" title="Accumulated Amortization" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">178,074</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left">$</td><td id="xdx_988_eus-gaap--FiniteLivedIntangibleAssetsNet_c20201231_pp0p0" title="Patents, Net" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">30,137</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AB_zzwf0WzDHsxe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Decrease
in 2021 cost was due to currency conversion. 2021 cost in Canadian dollars - $<span id="xdx_90D_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20211231__us-gaap--AwardTypeAxis__custom--CADMember_zg4ReEafwRo6" title="Increase in currency conversion"><ix:nonFraction name="FSI:IncreaseInCurrencyConversion" contextRef="AsOf2021-12-31_custom_CADMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="CAD">265,102</ix:nonFraction></span> (2020 - $<span id="xdx_909_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20201231__us-gaap--AwardTypeAxis__custom--CADMember_zV3LwzRLUQrb" title="Increase in currency conversion"><ix:nonFraction name="FSI:IncreaseInCurrencyConversion" contextRef="AsOf2020-12-31_custom_CADMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="CAD">265,102</ix:nonFraction></span> in Canadian dollars).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amount
of amortization for 2021: $<span id="xdx_904_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231_zgjeWW15r9Qf" title="Amortization"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">16,438</ix:nonFraction></span> (2020 - $<span id="xdx_906_eus-gaap--AmortizationOfIntangibleAssets_c20200101__20201231_pp0p0" title="Amortization"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">16,438</ix:nonFraction></span>) and is included in cost of sales in the consolidated statements of income and comprehensive
income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"><p id="xdx_89F_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zg7OVd19fWO1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Estimated
amortization expense over the next five years is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zY0f2ngYyaB4" style="display: none">SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231_zd2gvfDF81Fc" title="2022"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,699</ix:nonFraction></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AC_zfrew5pQLar7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>


<ix:exclude><!-- Field: Page; Sequence: 31; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->14<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock"><p id="xdx_802_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zflxDWbUSqa4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>8.
<span style="font-variant: small-caps"><span>Goodwill and Intangible Assets <b><span id="xdx_827_zzHw76VrhbT" style="display: none">GOODWILL AND INTANGIBLE ASSETS</span></b></span></span></b></span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock"><p id="xdx_898_eus-gaap--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zjXsHyEPpKwl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zE6ikT39usR4" style="display: none">SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Goodwill</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 82%; padding-bottom: 1.5pt">Balance as of December 31, 2020 and 2021</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><span><span id="xdx_905_eus-gaap--Goodwill_iI_c20201231_zqDInxhtDvTk" title="Goodwill"><span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zpczmAJ7ULed"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,534,275</ix:nonFraction></ix:nonFraction></span></span></span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Indefinite Lived Intangible Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance as of December 31, 2020 and 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span><span id="xdx_90C_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_zRUJmRw2pR4b" title="Indefinite Lived Intangible Asset"><span id="xdx_909_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20201231_z4Gysg2HBfDj"><ix:nonFraction name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD"><ix:nonFraction name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">770,000</ix:nonFraction></ix:nonFraction></span></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
relates to the acquisition of ENP Investments. Indefinite lived intangible assets consist of trade secrets and trademarks related to
the acquisition of ENP Investments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Definite Life Intangible Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 82%">Balance as of December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zqnzOKzCdel" title="Beginning balance" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2019-12-31_custom_EnPInvestmentsCorporationLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,182,000</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zL89yHsrhSD3" title="Amortization" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2020-01-012020-12-31_custom_EnPInvestmentsCorporationLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">176,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance as of December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zT63YCXPM2F6" title="Beginning balance" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2020-12-31_custom_EnPInvestmentsCorporationLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,006,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zm7BrKwivm23" title="Amortization" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2021-01-012021-12-31_custom_EnPInvestmentsCorporationLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">176,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Balances as of December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsNet_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_z7DeKkhzIHPe" title="Ending balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2021-12-31_custom_EnPInvestmentsCorporationLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,830,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


</ix:nonNumeric><p id="xdx_8A9_zoRl6QXTlhU1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Definite
life intangible assets consist of customer relationships and software related to the acquisition of ENP Investments. Customer relationships
and software are amortized over their estimated useful life of <span id="xdx_903_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--CustomerRelationshipsMember_zPamdrHmpXp1" title="Estimated useful life"><ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_CustomerRelationshipsMember" format="ixt-sec:duryear" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife">15</ix:nonNumeric></span> years and <span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--ComputerSoftwareIntangibleAssetMember_z5DLDXqlAdb2" title="Estimated useful life"><ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_ComputerSoftwareIntangibleAssetMember" format="ixt-sec:duryear" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife">3</ix:nonNumeric></span> years, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="FSI:ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock"><p id="xdx_897_ecustom--ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock_zt5FJmuBpXC" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Estimated
amortization expense over the next five years is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zR9Q8YPXhWmh" style="display: none">SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_900_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zuDLg7ZNAJYk" title="2022"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">160,000</ix:nonFraction></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zYJoY8bbWood" title="2023" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">160,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zH6nAo29pVZe" title="2024" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">160,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zAVlxw356sJ8" title="2025" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">160,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify; padding-bottom: 1.5pt">2026</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zkJorWHpqWP1" title="2026" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">160,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A9_zWaWeKH6m1Ke" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="FSI:LongTermDepositsTextBlock"><p id="xdx_80D_ecustom--LongTermDepositsTextBlock_zq1yQeUBivc1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>9.
<span style="font-variant: small-caps"><span>Long Term Deposits <b><span id="xdx_82C_zwPZEztgB3yf" style="display: none">LONG TERM DEPOSITS</span></b></span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="FSI:ScheduleOfLongTermDepositsTableTextBlock"><p id="xdx_892_ecustom--ScheduleOfLongTermDepositsTableTextBlock_z2LfUcfvuOs7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has security deposits that are long term in nature which consist of damage deposits held by landlords and security deposits held
by various vendors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zSLcqLr61Cb3" style="display: none">SCHEDULE OF LONG TERM DEPOSITS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20211231_z5wQyUodyJKj" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_493_20201231_zXANx59fZjyh" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Long term deposits</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DepositsAssetsNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,540</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DepositsAssetsNoncurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,540</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AB_zbZPdYjx7Amh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:EquityMethodInvestmentsDisclosureTextBlock"><p id="xdx_809_eus-gaap--EquityMethodInvestmentsDisclosureTextBlock_zv9UrlFNJfJ8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>10.
<span>Investments <b><span id="xdx_82C_zdcxzt7bihBc" style="display: none">INVESTMENTS</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">a<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company has a <span id="xdx_901_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zh71GJVpd1q9" title="Ownership interest"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">50</ix:nonFraction></span>% ownership interest
in ENP Peru Investments LLC (&#8220;ENP Peru&#8221;). ENP Peru is located in Illinois and leases warehouse space. The Company accounts
for this investment using the equity method of accounting. A summary of the Company&#8217;s investment follows:</span></p>

<ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember" escape="true" name="us-gaap:EquityMethodInvestmentsTextBlock"><p id="xdx_893_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zZYejtMnCpQ1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B2_zdTJRDriP3R9" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_906_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zyh4tunHg0y" title="Balance, Beginning"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2019-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">11,387</ix:nonFraction></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Return of equity</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zg6SlDLvHNEg" title="Return of equity" style="text-align: right">(<ix:nonFraction name="FSI:EquityMethodInvestmentReturnOfEquity" contextRef="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">9,063</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain in equity method investment</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Gain (loss) in equity method investment" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" contextRef="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,498</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zWbbRXiJmLMk" title="Balance, Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2020-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,822</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Return of equity</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuKru1CWLF22" title="Return of equity" style="text-align: right">(<ix:nonFraction name="FSI:EquityMethodInvestmentReturnOfEquity" contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">3,822</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain in equity method investment</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zifu3hVCdww" title="Gain (loss) in equity method investment" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">22,642</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_985_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zb9s0kzoim3" title="Balance, Ending" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">22,642</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AA_z1PEhRsE8Y29" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, the Company received an additional $<span id="xdx_901_eus-gaap--ProceedsFromContributionsFromAffiliates_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z70o4H9kofig" title="Proceeds from investment"><ix:nonFraction name="us-gaap:ProceedsFromContributionsFromAffiliates" contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">30,478</ix:nonFraction></span> from ENP Peru. At the time of receipt of the payment, the
investment balance was $nil and the payment was not recorded against the investment balance but was included in gains on investments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 32; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->15<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember" escape="true" name="us-gaap:GainLossOnInvestmentsTextBlock"><p id="xdx_890_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zEJTiTqkdV5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Summarized
profit and loss information for ENP Peru is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B2_z1eFrklZK1b3" style="display: none">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_988_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z4EWTd49a26g" title="Net sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:GainsLossesOnSalesOfInvestmentRealEstate" contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">322,079</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Net sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:GainsLossesOnSalesOfInvestmentRealEstate" contextRef="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">295,800</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuCNYZhxETki" title="Net income" style="text-align: right"><ix:nonFraction name="FSI:RealizedInvestmentGainsLossesNet" contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">45,285</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Net income" style="text-align: right"><ix:nonFraction name="FSI:RealizedInvestmentGainsLossesNet" contextRef="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,996</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AE_z2KpwiD1bkyd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">b<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During the year ended December 31, 2018,
ENP Investments acquired a <span id="xdx_90E_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20181231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zKYTVXlXyfIc" title="Ownership interest"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2018-12-31_custom_EnpRealtyLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">24</ix:nonFraction></span>% ownership interest in ENP Realty LLC (&#8220;ENP Realty&#8221;). ENP Realty is located in Illinois and
leases warehouse space. During the year ended December 31, 2020, the other partners of ENP Realty withdrew from the partnership, resulting
in ENP Realty becoming a wholly owned subsidiary of ENP Investments. As a result, ENP Realty is consolidated in the financial statements
of the Company and a <span id="xdx_90E_eus-gaap--MinorityInterestOwnershipPercentageByNoncontrollingOwners_iI_pid_dp_uPure_c20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember_zDfhCAbBqndj" title="Non-controlling interests"><ix:nonFraction name="us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners" contextRef="AsOf2020-12-31_custom_EnpRealtyLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">35</ix:nonFraction></span>% non-controlling interest is recognized from the acquisition date onwards.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">It
was determined that ENP Realty did not meet the definition of a business in accordance with FASB Codification Topic 805, Business Combinations
(ASC 805)<i>, </i>and the acquisition was accounted for as an asset acquisition. The following table summarizes the final purchase price
allocation of the consideration paid to the respective fair values of the assets acquired and liabilities assumed in ENP Realty as of
the acquisition date.</span></p>

<ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_EnpRealtyLLCMember" escape="true" name="FSI:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock"><p id="xdx_89F_ecustom--ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_z0wMTUSS81xj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span><span><span id="xdx_8B0_zUVZRvearMva" style="display: none">SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION</span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: left; padding-bottom: 1.5pt">Investment eliminated upon consolidation</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><span id="xdx_907_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20210101__20211231_zbg0Kp2l6Mf9" title="Investment eliminated upon consolidation"><ix:nonFraction name="FSI:InvestmentEliminatedUponConsolidation" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">63,165</ix:nonFraction></span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Assets acquired:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Cash</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pp0p0_c20211231_zhOVv8AutEWc" title="Assets acquired: Cash" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,419</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Building</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iI_pp0p0_c20211231_zznfX3IvKHag" title="Assets acquired:Building" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">630,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Land</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iI_pp0p0_c20211231_zlTTI6reeuO4" title="Assets acquired: Land" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">85,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Liabilities assumed:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Accounts payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pp0p0_di_c20211231_zCrjSk8UrOZf" title="Liabilities assumed: Accounts payable" style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">15,797</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Long term debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt_iNI_pp0p0_di_c20211231_z2LD5YNSJJVe" title="Liabilities assumed: Long term debt" style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">450,000</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Deferred income tax liability</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_pp0p0_di_c20211231_zsBoS6DdJ1dj" title="Liabilities assumed: Deferred income tax liability" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">66,116</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Total identifiable net assets:</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_pp0p0_c20211231_zzKg3bxfGErb" title="Total identifiable net assets:" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">196,506</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain on acquisition of ENP Realty</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_ecustom--GainOnAcquisitionOfEnpRealty_pp0p0_c20210101__20211231_zHDSnMRDPZSc" title="Gain on acquisition of ENP Realty" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="FSI:GainOnAcquisitionOfEnpRealty" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">133,341</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AA_zNLmVO3NIBzg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
income tax expense arising from the deferred income tax liability is net against gain on acquisition of ENP Realty in the consolidated
statements of income and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_EnpRealtyLLCMember" escape="true" name="us-gaap:EquityMethodInvestmentsTextBlock"><p id="xdx_89D_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_zemTOk4wjwI2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A
summary of the Company&#8217;s investment follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span><span id="xdx_8B1_zxdrOPvF7Pwc" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_90C_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zoeW8coVmUL1" title="Balance, Beginning"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2019-12-31_custom_EnpRealtyLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">63,165</ix:nonFraction></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Investment eliminated upon consolidation</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zOhwWHdTR0r5" title="Investment eliminated upon consolidation" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="FSI:InvestmentEliminatedUponConsolidation" contextRef="From2020-01-012020-12-31_custom_EnpRealtyLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">63,165</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance, December 31, 2020 and 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span id="xdx_90E_eus-gaap--EquityMethodInvestments_iE_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zZYLYHPEyJ2" title="Balance, Ending"><span id="xdx_90D_eus-gaap--EquityMethodInvestments_iE_c20210101__20211231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_ztyP2cPxE9x2" title="Balance, Ending"><span style="-sec-ix-hidden: xdx2ixbrl1102"><span style="-sec-ix-hidden: xdx2ixbrl1104">-</span></span></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A1_ztcpb3CVpCdb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">c<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In December 2018 the Company invested $<span id="xdx_90D_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_pp0p0" title="Investment"><ix:nonFraction name="us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" contextRef="From2018-12-012018-12-31_custom_AppliedHoldingCorpMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">200,000</ix:nonFraction></span>
in Applied Holding Corp. (&#8220;Applied&#8221;). Applied is a captive insurance company and the Company received a non-convertible promissory
note for its investment which becomes due in <span id="xdx_909_eus-gaap--DebtConversionConvertedInstrumentExpirationOrDueDateYear_c20181201__20181231__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_zAV3R6Wns4O9" title="Debt conversion due date"><ix:nonNumeric contextRef="From2018-12-012018-12-31_custom_AppliedHoldingCorpMember" name="us-gaap:DebtConversionConvertedInstrumentExpirationOrDueDateYear">2021</ix:nonNumeric></span> but may be extended with notice for a maximum of <span id="xdx_901_eus-gaap--DebtInstrumentTerm_dc_c20181201__20181231__srt--RangeAxis__srt--MaximumMember__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_zHa8vFs4Tp08" title="Debt Instrument, Term"><ix:nonNumeric contextRef="From2018-12-012018-12-31_srt_MaximumMember_custom_AppliedHoldingCorpMember" format="ixt-sec:durwordsen" name="us-gaap:DebtInstrumentTerm">two years</ix:nonNumeric></span>. In accordance with FASB
Codification Topic 320, <i>Investments &#8211; Debt Securities</i> (ASC 320), the Company has elected to account for this investment
at cost. During the year ended December 31, 2021, the Company entered an agreement with Applied to extend the maturity date of this promissory
note to December 6, 2023.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">d<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In December 2018 the Company invested $<span id="xdx_909_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_pp0p0" title="Investment"><ix:nonFraction name="us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" contextRef="From2018-12-012018-12-31_custom_TrioOpportunityCorpMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></span>
in Trio Opportunity Corp. (&#8220;Trio&#8221;), a privately held entity. Trio is a real estate investment vehicle and the Company received
<span id="xdx_907_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20181201__20181231__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_z842Q9hJQfki" title="Non-voting shares"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" contextRef="From2018-12-012018-12-31_us-gaap_CommonClassBMember_custom_TrioOpportunityCorpMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">50,000</ix:nonFraction></span> non-voting Class B shares at $<span id="xdx_90C_eus-gaap--SharePrice_iI_pid_c20181231__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember_zla8cTHUPr2g" title="Share price"><ix:nonFraction name="us-gaap:SharePrice" contextRef="AsOf2018-12-31_custom_TrioOpportunityCorpMember_us-gaap_CommonClassBMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">10.00</ix:nonFraction></span>/share. In accordance with FASB Codification Topic 321, <i>Investments &#8211; Equity Securities
(</i>ASC 321), the Company has elected to account for this investment at cost.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 33; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->16<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(e<span style="font-variant: small-caps">)
</span></b>In January 2019, the Company invested $<span id="xdx_904_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20190101__20190131__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" title="Investment"><ix:nonFraction name="us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" contextRef="From2019-01-012019-01-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,001,000</ix:nonFraction></span> in a Florida based LLC that is engaged in international sales of fertilizer
additives. The Company accounts for this investment using the equity method of accounting. According to the operating agreement, the
Company has a <span id="xdx_906_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20190131__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zrwGPcF01714" title="Ownership interest"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2019-01-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">50</ix:nonFraction></span>% interest in the profit and loss of the Florida based LLC but does not have control. <span style="background-color: white">A
summary of the Company&#8217;s investment follows:</span></span></p>

<ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember" escape="true" name="us-gaap:EquityMethodInvestmentsTextBlock"><p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zjQX0cNnXGD" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zXj8rYv2FEnj" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_903_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zTuO79otRgA8" title="Balance, Beginning"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2019-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,141,033</ix:nonFraction></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Additional payments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--AdditionalPayment_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" title="Additional payment" style="text-align: right"><ix:nonFraction name="FSI:AdditionalPayment" contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,518,684</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Gain in equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqvP8dT6B6C9" title="Gain in equity method investment" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">809,342</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Return of equity</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_ecustom--EquityMethodInvestmentReturnOfEquity_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" title="Return of equity" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="FSI:EquityMethodInvestmentReturnOfEquity" contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">896,714</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zoihULlgbo8g" title="Balance, Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,572,345</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gain in equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1FaUcXX8EQ5" title="Gain in equity method investment" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">454,023</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Return of equity</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zAj22AtBd1x1" title="Return of equity" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="FSI:EquityMethodInvestmentReturnOfEquity" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">325,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zolSGiKsRZfj" title="Balance, Ending" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,701,368</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AF_zKPyIielNJeh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Further
to the original investment amount, the Company had placed $<span id="xdx_904_eus-gaap--RestrictedCashNoncurrent_iI_pp0p0_c20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zsSg9PhxeDFl" title="Restricted cash, released upon reaching milestone"><ix:nonFraction name="us-gaap:RestrictedCashNoncurrent" contextRef="AsOf2020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,000,000</ix:nonFraction></span> in trust, which was released during the year ended December 31,
2020 upon the Florida based LLC reaching a milestone related to earnings before interest, taxes and depreciation (&#8220;EBITDA&#8221;)
targets. The additional payments of $<span id="xdx_903_eus-gaap--AssetAcquisitionConsiderationTransferredContingentConsideration_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zm26x62uld94" title="Contigent consideration of additional payment"><ix:nonFraction name="us-gaap:AssetAcquisitionConsiderationTransferredContingentConsideration" contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,518,684</ix:nonFraction></span> made during the year ended December 31, 2020 related to contingent consideration which
was dependent on the Florida based LLC meeting certain performance millstones during the year. Summarized profit and loss information
related to the equity accounted investment is as follows:</span></p>

<ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember" escape="true" name="us-gaap:GainLossOnInvestmentsTextBlock"><p id="xdx_89C_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8cnNEy23dV4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zgvVrMUUqwzl" style="display: none">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zU0XZFKBlZ98" title="Net sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:GainsLossesOnSalesOfInvestmentRealEstate" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">11,543,277</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" title="Net sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:GainsLossesOnSalesOfInvestmentRealEstate" contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,138,511</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--RealizedInvestmentGainsLosses_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z3C5zeqFyTA6" title="Gross profit" style="text-align: right"><ix:nonFraction name="us-gaap:RealizedInvestmentGainsLosses" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,517,387</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--RealizedInvestmentGainsLosses_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" title="Gross profit" style="text-align: right"><ix:nonFraction name="us-gaap:RealizedInvestmentGainsLosses" contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,688,654</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1VYMQW7W6S3" title="Net income" style="text-align: right"><ix:nonFraction name="FSI:RealizedInvestmentGainsLossesNet" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">908,045</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_985_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" title="Net income" style="text-align: right"><ix:nonFraction name="FSI:RealizedInvestmentGainsLossesNet" contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,618,685</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AD_zgxHwQ73uRpj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, the Company had sales of $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zU35bATX7KP4" title="Revenue"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,982,281</ix:nonFraction></span> (2020 - $<span id="xdx_90D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1dfp7t1XK3i" title="Revenue"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,476,047</ix:nonFraction></span>) to the Florida Based LLC, of which $<span id="xdx_90E_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zlb9TzRoYdi2" title="Accounts Receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,202,345</ix:nonFraction></span>
is included within Accounts Receivable as at December 31, 2021 (2020 - $<span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zg0P4A4ufDx6" title="Accounts Receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,593,272</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(f)
</b>In December 2020, the Company invested $<span id="xdx_90F_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20201201__20201231__dei--LegalEntityAxis__custom--LygosIncMember_pp0p0" title="Investment"><ix:nonFraction name="us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" contextRef="From2020-12-012020-12-31_custom_LygosIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></span> in Lygos Inc., a privately held entity, under a Simple Agreement for Future Equity
agreement. Both companies <span style="background-color: white">intend to work together in pursuit of sustainable aspartic acid through
synthetic biology<span style="font-variant: small-caps">.</span></span> <span style="font-variant: small-caps">T</span>he Company has
elected to account for this investment at cost. A summary of the Company&#8217;s investment follows:</span></p>

<ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_LygosIncMember" escape="true" name="us-gaap:EquityMethodInvestmentsTextBlock"><p id="xdx_89B_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--LygosIncMember_zPBmG5oMNeUb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B9_zGaeSay6wX36" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2019</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span id="xdx_90D_eus-gaap--EquityMethodInvestments_iS_pdp0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zVTNpSLrGV3g" title="Balance, Beginning"><span style="-sec-ix-hidden: xdx2ixbrl1170">-</span></span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 82%; padding-bottom: 1.5pt">Acquisition</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AcquisitionCosts_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zhuXJr3UhhUc" title="Acquisition" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><ix:nonFraction name="us-gaap:AcquisitionCosts" contextRef="From2020-01-012020-12-31_custom_LygosIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--EquityMethodInvestments_iS_pdp0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zUYgjZ9sOb78" title="Balance, Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2020-12-31_custom_LygosIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Additional payment</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_ecustom--AdditionalPayment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zICLbseBTTfi" title="Additional payment" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="FSI:AdditionalPayment" contextRef="From2021-01-012021-12-31_custom_LygosIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98E_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zXIa7z3v9El5" title="Balance, Ending" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2021-12-31_custom_LygosIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,000,000</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>


</ix:nonNumeric><p id="xdx_8AD_zhkteg4m8Fwg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ShortTermDebtTextBlock"><p id="xdx_80F_eus-gaap--ShortTermDebtTextBlock_zax4mFAAEIkd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>11.
<span>Short-Term Line of Credit <b><span id="xdx_82B_zIpwgU0ceoXe" style="display: none">SHORT-TERM LINE OF CREDIT</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">a<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In September 2018, the Company signed a new
agreement with Harris Bank (&#8220;Harris&#8221;) to renew the expiring credit line. The revolving line of credit is for an aggregate
amount of up to the lesser of (i) $<span id="xdx_903_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_c20180930__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember_pp0p0" title="Aggregate amount of revolving line of credit"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2018-09-30_custom_NewAgreementMember_custom_HarrisBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,500,000</ix:nonFraction></span>, or (ii) <span id="xdx_905_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20180901__20180930__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember_z0kbE77Ncsbi" title="Eligible percentage of domestic accounts receivable"><ix:nonFraction name="FSI:EligiblePercentageOfDomesticAccountsReceivable" contextRef="From2018-09-012018-09-30_custom_NewAgreementMember_custom_HarrisBankMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">80</ix:nonFraction></span>% of eligible domestic accounts receivable and certain foreign accounts receivable
plus <span id="xdx_90A_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20180901__20180930__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember_zHBWVaVuL9Ga" title="Percentage of foreign accounts receivable of inventory"><ix:nonFraction name="FSI:PercentageOfForeignAccountsReceivableOfInventory" contextRef="From2018-09-012018-09-30_custom_NewAgreementMember_custom_HarrisBankMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">60</ix:nonFraction></span>% of inventory. The loan had an annual interest rate of 4.75%. The revolving line of credit at Harris was paid in October 2020,
upon the opening of the revolving line of credit at Midland States Bank (&#8220;Midland&#8221;).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(b)
</b>In April 2020 and in August 2021, ENP Investments signed a new agreement with Midland to renew the expiring credit line. The revolving
line of credit is for an aggregate amount up to $<span id="xdx_901_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20210831__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_zsnxNNkG16na" title="Aggregate amount of revolving line of credit"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2021-08-31_custom_NewAgreementMember_custom_MidlandStatesBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,000,000</ix:nonFraction></span>. The interest rate of this loan is subject to change from time to time based
on changes in an independent index which is the 1 month LIBOR as published in the Wall Street Journal (the &#8220;Index&#8221;). Interest
on the unpaid principal balance of this loan will be calculated using a rate of <span id="xdx_90E_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20210801__20210830__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zKx86ZEQDTo2" title="Debt effective rate"><ix:nonFraction name="us-gaap:LineOfCreditFacilityInterestRateDuringPeriod" contextRef="From2021-08-012021-08-30_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.000</ix:nonFraction></span> percentage points over the Index. Under no circumstances
will the interest rate of this loan be less than <span id="xdx_90D_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20210831__srt--RangeAxis__srt--MaximumMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zDhnxUSw5NV3" title="Annual interest rate of loan"><ix:nonFraction name="us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd" contextRef="AsOf2021-08-31_srt_MaximumMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.250</ix:nonFraction></span>% per annum or more than the maximum rate allowed by applicable law. The interest
rate at December 31, 2021 is <span id="xdx_90F_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zQkyHFggnav5" title="Annual interest rate of loan"><ix:nonFraction name="us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd" contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.25</ix:nonFraction></span>% (2020 &#8211; <span id="xdx_90A_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zAcaPTtypEdg" title="Annual interest rate of loan"><ix:nonFraction name="us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd" contextRef="AsOf2020-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.5</ix:nonFraction></span>%). In March 2022, a new agreement was signed, increasing the revolving line of credit
to an aggregate amount $<span id="xdx_90E_eus-gaap--LineOfCredit_iI_c20220331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zShFT1oI8jki" title="Revolving line of credit"><ix:nonFraction name="us-gaap:LineOfCredit" contextRef="AsOf2022-03-31_custom_MidlandStatesBankMember_custom_NewAgreementMember_us-gaap_SubsequentEventMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,000,000</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 34; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->17<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
revolving line of credit contains customary affirmative and negative covenants, including the following: compliance with laws, provisions
of financial statements and periodic reports, payment of taxes, maintenance of inventory and insurance, maintenance of operating accounts
at Midland, Midland&#8217;s access to collateral, formation or acquisition of subsidiaries, incurrence of indebtedness, dispositions
of assets, granting liens, changes in business, ownership or business locations, engaging in mergers and acquisitions, making investments
or distributions and affiliate transactions. NanoChem is a guarantor of <span id="xdx_906_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zAIcKlvxE78k" title="Loan guaranteed rate"><ix:nonFraction name="FSI:LoanGuaranteedRate" contextRef="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>% of all the principal and other loan costs not to exceed $<span id="xdx_906_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_znZKOKm3USg2" title="Line of Credit"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,950,000</ix:nonFraction></span>.
As of December 31, 2021, ENP Investments was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">To
secure the repayment of any amounts borrowed under the revolving line of credit, ENP Investments granted Midland a security interest
in all inventory, equipment and fixtures and acknowledges a separate commercial security agreement from guarantor to Midland dated February
15, 2011.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term
borrowings outstanding under the revolving line as of December 31, 2021 were $<span id="xdx_90C_eus-gaap--ShortTermBorrowings_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zoXE6NK6pHpl" title="Short-term borrowings"><ix:nonFraction name="us-gaap:ShortTermBorrowings" contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">811,665</ix:nonFraction></span> (2020 - $<span id="xdx_90E_eus-gaap--ShortTermBorrowings_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_pp0p0" title="Short-term borrowings"><ix:nonFraction name="us-gaap:ShortTermBorrowings" contextRef="AsOf2020-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">541,456</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(c)
</b>In October 2021, the Company signed a new agreement with Midland to replace the expiring credit line at Harris. The revolving line
of credit is for an aggregate amount of up to the lesser of (i) $<span id="xdx_90F_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z0vu52ndMiud" title="Aggregate amount of revolving line of credit"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,500,000</ix:nonFraction></span>, or (ii) <span id="xdx_90D_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zKXM2y9IFsY7" title="Eligible percentage of domestic accounts receivable"><ix:nonFraction name="FSI:EligiblePercentageOfDomesticAccountsReceivable" contextRef="From2021-10-012021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">80</ix:nonFraction></span>% of eligible domestic accounts receivable and
certain foreign accounts receivable plus <span id="xdx_90E_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zaRBjeb8JC25" title="Percentage of foreign accounts receivable of inventory"><ix:nonFraction name="FSI:PercentageOfForeignAccountsReceivableOfInventory" contextRef="From2021-10-012021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">50</ix:nonFraction></span>% of inventory. Interest on the unpaid principal balance of this loan will be calculated using
a rate of <span id="xdx_901_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20211001__20211031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zkITkB36FBE" title="Debt effective rate"><ix:nonFraction name="us-gaap:LineOfCreditFacilityInterestRateDuringPeriod" contextRef="From2021-10-012021-10-31_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.500</ix:nonFraction></span> percentage points over the Index. Under no circumstances will the interest rate of this loan be less than <span id="xdx_90C_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20211031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_z3dCYz392nBc" title="Debt instrument interest rate"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2021-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionIncMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.50</ix:nonFraction></span>% per annum
or more than the maximum rate allowed by applicable law. The interest rate at December 31, 2021 is <span id="xdx_909_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zeqV8IiE4m1f" title="Annual interest rate of loan"><ix:nonFraction name="us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd" contextRef="AsOf2021-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.50</ix:nonFraction></span>% (2020 &#8211; <span id="xdx_90C_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20201231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zNCHGTw5Djm4" title="Annual interest rate of loan"><ix:nonFraction name="us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd" contextRef="AsOf2020-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">3.75</ix:nonFraction></span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
revolving line of credit contains customary affirmative and negative covenants, including the following: compliance with laws, provision
of financial statements and periodic reports, payment of taxes, maintenance of inventory and insurance, maintenance of operating accounts
at Midland, Midland&#8217;s access to collateral, formation or acquisition of subsidiaries, incurrence of indebtedness, dispositions
of assets, granting liens, changes in business, ownership or business locations, engaging in mergers and acquisitions, making investments
or distributions and affiliate transactions. The covenants also require that the Company maintain a minimum ratio of qualifying financial
assets to the sum of qualifying financial obligations. As of December 31, 2021, Company was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">To
secure the repayment of any amounts borrowed under the revolving line of credit, the Company granted Midland a security interest in substantially
all of the assets of NanoChem, exclusive of intellectual property assets.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term
borrowings outstanding under the revolving line as of December 31, 2021 were $<span id="xdx_90F_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zr2PZourhaqk" title="Line of Credit"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="AsOf2021-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,489,154</ix:nonFraction></span> (2020 - $<span id="xdx_906_eus-gaap--LinesOfCreditCurrent_c20201231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_pp0p0" title="Line of Credit"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="AsOf2020-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,574,617</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:LongTermDebtTextBlock"><p id="xdx_805_eus-gaap--LongTermDebtTextBlock_zdJZydd6i4jf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>12.
<span>Long Term Debt <b><span id="xdx_82F_zcVGBibsHtv7" style="display: none">LONG TERM DEBT</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">a<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In October 2018, NanoChem signed a $<span id="xdx_902_eus-gaap--DebtInstrumentFaceAmount_c20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Promissory note"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,100,000</ix:nonFraction></span>
term loan with Harris with a rate of prime to be repaid over <span id="xdx_903_eus-gaap--DebtInstrumentTerm_dtY_c20181003__20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z87eYfN9ARS7" title="Debt instrument, term"><ix:nonNumeric contextRef="From2018-10-032018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember" format="ixt-sec:duryear" name="us-gaap:DebtInstrumentTerm">7</ix:nonNumeric></span> years with equal monthly installments plus interest along two payments
consisting of <span id="xdx_904_ecustom--PaymentOfMonthlyInstallmentsInterestRate_pid_dp_uPure_c20181003__20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zFLghSUSBgYj" title="Payment of monthly installments interest rate"><ix:nonFraction name="FSI:PaymentOfMonthlyInstallmentsInterestRate" contextRef="From2018-10-032018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">25</ix:nonFraction></span>% prior year cash flow recapture, capped at $<span id="xdx_901_eus-gaap--DebtInstrumentPeriodicPayment_c20181003__20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Debt instrument periodic payment"><ix:nonFraction name="us-gaap:DebtInstrumentPeriodicPayment" contextRef="From2018-10-032018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">300,000</ix:nonFraction></span>, due May 31, 2019 and 2020. The money was used to purchase a <span id="xdx_90B_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zl9Atv0BqNT8" title="Ownership interest percentage"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2018-10-31_custom_TermLoanMember_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>%
interest in ENP Investments. Interest expense for the year ended December 31, 2020 was $<span id="xdx_90F_eus-gaap--InterestExpenseDebt_pp0p0_c20200101__20201231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zSsbE3jhFBOb" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2020-01-012020-12-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">75,874</ix:nonFraction></span>. This loan was paid in October 2020 upon
opening of credit facilities at Midland.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">b<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In April 2019, NanoChem signed a loan for
$<span id="xdx_903_eus-gaap--DebtInstrumentFaceAmount_c20190430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_pp0p0" title="Promissory note"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2019-04-30_custom_HarrisBankMember_custom_NanoChemSolutionIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,100,000</ix:nonFraction></span> with Harris with a rate of prime plus <span id="xdx_90B_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20190430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zfeANNredtV5" title="Debt instrument, interest rate, stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2019-04-30_custom_HarrisBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionIncMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.5</ix:nonFraction></span>% for the purchase of new manufacturing equipment. The Company paid interest monthly
until February 2020, when equal monthly installments of the principal and interest were due until January 2024. Interest expense for
the year ended December 31, 2020 was $<span id="xdx_904_eus-gaap--InterestExpenseDebt_c20200101__20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_pp0p0" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2020-01-012020-12-31_custom_HarrisBankMember_custom_NanoChemSolutionIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">36,272</ix:nonFraction></span>. This loan was paid in October 2020 upon opening of credit facilities at Midland.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 35; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->18<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">c<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In January 2018, ENP Investments signed a
$<span id="xdx_906_eus-gaap--DebtInstrumentFaceAmount_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Promissory note"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">200,000</ix:nonFraction></span> promissory note with Midland with a rate of <span id="xdx_90E_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zyV5ncbMpow" title="Debt instrument, interest rate, stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">5.250</ix:nonFraction></span>% to be repaid over <span id="xdx_907_eus-gaap--DebtInstrumentTerm_dtY_c20180101__20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_znU4irB35WC9" title="Debt instrument, term"><ix:nonNumeric contextRef="From2018-01-012018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember" format="ixt-sec:duryear" name="us-gaap:DebtInstrumentTerm">7</ix:nonNumeric></span> years with equal monthly installments plus interest.
This money was used to purchase production equipment and in May 2021, ENP Investments paid the loan in full with cash on hand. Interest
expense for the year ended December 31, 2021 was $<span id="xdx_90A_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z19XxWsVcgxl" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,788</ix:nonFraction></span> (2020 - $<span id="xdx_90C_eus-gaap--InterestExpenseDebt_pp0p0_c20200101__20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zasitCrF0ime" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2020-01-012020-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,588</ix:nonFraction></span>). The principal balance owing at December 31, 2021 is $<span id="xdx_908_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_d0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zutjZ6q96nch" title="Debt balance owing">nil</span> (2020
- $<span id="xdx_90D_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z4SkbQoEBB84" title="Debt balance owing"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2020-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">125,543</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">d<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In March 2016, ENP Investments signed a $<span id="xdx_903_eus-gaap--DebtInstrumentFaceAmount_c20160331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Promissory note"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">45,941</ix:nonFraction></span>
promissory note with Ford Motor Credit Company with a rate of <span id="xdx_907_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20160331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zzRIQsAQfoph" title="Debt instrument, interest rate, stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.00</ix:nonFraction></span>% interest to be repaid over <span id="xdx_90A_eus-gaap--DebtInstrumentTerm_dtY_c20160301__20160331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zDa4twNflega" title="Debt instrument, term"><ix:nonNumeric contextRef="From2016-03-012016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember" format="ixt-sec:duryear" name="us-gaap:DebtInstrumentTerm">5</ix:nonNumeric></span> years with equal monthly installments.
In August 2020, the loan was paid in full.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">e<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In April 2020, NanoChem received a <span id="xdx_901_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zBRJMLyMAPDk" title="Debt instrument, term"><ix:nonNumeric contextRef="From2020-04-012020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember" format="ixt-sec:durwordsen" name="us-gaap:DebtInstrumentTerm">two year</ix:nonNumeric></span>
loan of $<span id="xdx_904_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zFN65YlfIMg9" title="Promissory note"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">322,000</ix:nonFraction></span> through the Paycheck Protection Program with a rate of <span id="xdx_901_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z98TxKrAS8hb" title="Debt instrument, interest rate, stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1</ix:nonFraction></span>%. In March, 2021, the loan was forgiven by the Small Business
Administration and has been recorded as Other Income on the consolidated statements of income and comprehensive income for the year ended
December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(f)
</b>In April 2020, ENP Investments received a <span id="xdx_904_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zxIFzg3QUog" title="Debt instrument, term"><ix:nonNumeric contextRef="From2020-04-012020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember" format="ixt-sec:durwordsen" name="us-gaap:DebtInstrumentTerm">two year</ix:nonNumeric></span> loan of $<span id="xdx_90D_eus-gaap--DebtInstrumentFaceAmount_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Promissory note"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">215,960</ix:nonFraction></span> through the Paycheck Protection Program with a rate of <span id="xdx_90B_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_z5owmptV0Rq1" title="Debt instrument, interest rate, stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-04-30_custom_HarrisBankMember_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1</ix:nonFraction></span>%. In
March, 2021, the loan was forgiven by the Small Business Administration and has been recorded as Other Income on the consolidated statements
of income and comprehensive income for the year ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(g)
</b>In October 2020, NanoChem signed a $<span id="xdx_90F_eus-gaap--DebtInstrumentFaceAmount_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Promissory note"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,980,947</ix:nonFraction></span> term loan with Midland with a rate of <span id="xdx_903_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z7jAis4EyjBb" title="Debt instrument, interest rate, stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">3.85</ix:nonFraction></span>% to be repaid over <span id="xdx_902_eus-gaap--DebtInstrumentTerm_dtY_c20201001__20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z9fz3MCXtfjd" title="Debt instrument, term"><ix:nonNumeric contextRef="From2020-10-012020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt-sec:duryear" name="us-gaap:DebtInstrumentTerm">5</ix:nonNumeric></span> years with equal monthly
payments including interest. The money was used to retire the debt at Harris related to the loan to purchase a <span id="xdx_906_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zNrmr9fV3HVa" title="Ownership interest percentage"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2020-10-31_custom_TermLoanMember_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>% interest in ENP Investments.
Interest for the year ended December 31, 2021 was $<span id="xdx_906_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zLWJIovm2gkj" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_NanoChemSolutionsIncMember_custom_TermLoanMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">69,831</ix:nonFraction></span> (2020 - $<span id="xdx_901_eus-gaap--InterestExpenseDebt_c20200101__20201231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_pp0p0" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2020-01-012020-12-31_custom_NanoChemSolutionsIncMember_custom_TermLoanMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,389</ix:nonFraction></span>). The balance owing at December 31, 2021 is $<span id="xdx_90E_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zalheqJL8w48" title="Debt balance owing"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,554,044</ix:nonFraction></span> (2020
- $<span id="xdx_900_eus-gaap--DebtDefaultLongtermDebtAmount_c20201231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Debt balance owing"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2020-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,920,976</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_PromissoryNoteOneWithMidlandBankMember" escape="true" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock"><p id="xdx_898_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zJvDhmOhYQw3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has committed to the following repayments:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zkO0Q3J6R7gj" style="display: none">SCHEDULE OF INTEREST LOAN REPAYMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_907_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z2RLELj9IdWi" title="2022"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" contextRef="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">382,705</ix:nonFraction></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zUqHV2lOMiK6" title="2023" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" contextRef="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">397,414</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98A_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zzomB3Owo9lg" title="2024" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" contextRef="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">413,516</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">2025</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_983_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z7uwFqbraXJh" title="2025" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" contextRef="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">360,409</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AC_zxg52zp2gwdk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(h)
</b>In October 2020, NanoChem signed a loan for $<span id="xdx_90E_eus-gaap--DebtInstrumentFaceAmount_c20201031__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_pp0p0" title="Promissory note"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2020-10-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">894,253</ix:nonFraction></span> with Midland with an interest rate <span id="xdx_908_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zrslzdjfoDVg" title="Debt instrument, interest rate, stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-10-31_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">3.85</ix:nonFraction></span>% to be repaid over two years with equal
monthly payments including interest. The funds were used to replace the loan at Harris for the purchase of new manufacturing equipment.
Interest expense for the year ended December 31, 2021 was $<span id="xdx_90E_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zUFmHwfeMMI7" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">24,827</ix:nonFraction></span> (2020 - $<span id="xdx_90B_eus-gaap--InterestExpenseDebt_c20200101__20201231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_pp0p0" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2020-01-012020-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,218</ix:nonFraction></span>). The balance owing at December 31, 2021 is $<span id="xdx_90E_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zxwfyny75aTa" title="Debt balance owing"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2021-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">381,674</ix:nonFraction></span>
(2020 - $<span id="xdx_909_eus-gaap--DebtDefaultLongtermDebtAmount_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Debt balance owing"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2020-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">822,380</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(i)
</b>In January 2020, ENP Mendota refinanced its mortgage and signed a loan for $<span id="xdx_90D_eus-gaap--DebtInstrumentFaceAmount_c20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_pp0p0" title="Promissory note"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2020-01-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">450,000</ix:nonFraction></span> with Stock Yards Bank &amp; Trust to be repaid
over <span id="xdx_906_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zEQLoMTpAE0i" title="Debt instrument, term"><ix:nonNumeric contextRef="From2020-01-012020-01-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember" format="ixt-sec:duryear" name="us-gaap:DebtInstrumentTerm">10</ix:nonNumeric></span> years with monthly installments plus interest. Interest for the first five years is at <span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zDObm7Ko6uc2" title="Debt instrument, interest rate, stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-01-31_custom_StockYardsBankTrustMember_us-gaap_PrimeRateMember_custom_EnpRealtyLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.35</ix:nonFraction></span>% and it will be adjusted for the
last five years to the Cincinnati Federal Home Bank Loan <span id="xdx_902_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__srt--FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis__srt--FederalHomeLoanBankOfCincinnatiMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_z5Q7xjrPA1mb" title="Debt instrument, term"><ix:nonNumeric contextRef="From2020-01-012020-01-31_srt_FederalHomeLoanBankOfCincinnatiMember_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember" format="ixt-sec:duryear" name="us-gaap:DebtInstrumentTerm">5</ix:nonNumeric></span> year fixed index plus <span id="xdx_906_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__srt--FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis__srt--FederalHomeLoanBankOfCincinnatiMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zfa4kbuvzMn6" title="Debt instrument, interest rate, stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-01-31_srt_FederalHomeLoanBankOfCincinnatiMember_custom_StockYardsBankTrustMember_us-gaap_PrimeRateMember_custom_EnpRealtyLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">2.5</ix:nonFraction></span>%. Interest expense for the year ended December 31,
2021 was $<span id="xdx_904_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_zNpjs0yQ18sf" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_EnpRealtyLLCMember_custom_StockYardsBankTrustMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">17,107</ix:nonFraction></span> (2020 - $<span id="xdx_906_eus-gaap--InterestExpenseDebt_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_pp0p0" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_custom_StockYardsBankTrustMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">18,049</ix:nonFraction></span>). The balance owing at December 31, 2021 is $<span id="xdx_90F_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zS52XGWgFBc3" title="Debt balance owing"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2021-12-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">430,880</ix:nonFraction></span> (2020 - $<span id="xdx_907_eus-gaap--DebtDefaultLongtermDebtAmount_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_pp0p0" title="Debt balance owing"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2020-12-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">440,779</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-012021-12-31_custom_PromissoryNoteWithMidlandBankMember" escape="true" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock"><p id="xdx_89D_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zYX9114MX1Jk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has committed to the following repayments:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_z2z9lTHKdU56" style="display: none">SCHEDULE OF INTEREST LOAN REPAYMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_909_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zPcjih80ZYFl" title="2022"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" contextRef="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">29,749</ix:nonFraction></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zBGEVE3alHe5" title="2023" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" contextRef="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">29,749</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98B_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zQGQAp5ZWBI3" title="2025" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" contextRef="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">29,749</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">2025</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_989_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zdnMGS0ccLj7" title="2025" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" contextRef="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">29,749</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AF_zUeTgMUnWFr5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="FSI:ScheduleOfLoanCovenantsTableTextBlock"><p id="xdx_890_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zDlxcW0x5J0l" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2021, Company was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BC_zddv8THbImJ1" style="display: none">SCHEDULE OF LOAN COVENANTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold">Continuity</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20210101__20211231_zBpDd1JsvKH9" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20200101__20201231_zouEcQcAiCMk" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LongTermDebt_iS_pp0p0_zF56tzaCsNRl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Balance, January 1</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,847,638</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2019-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,380,393</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ProceedsFromLoans_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Plus: Proceeds from loans</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1349">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromLoans" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,413,160</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_ecustom--ProceedsFromLoanAcquiredWithAcquisition_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Plus: Loan acquired with acquisition of ENP Realty</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1352">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:ProceedsFromLoanAcquiredWithAcquisition" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">450,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--RepaymentsOfBankDebt_iN_pp0p0_di_z7Wfa0KQE4N9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Less: Forgiveness on PPP loans</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:RepaymentsOfBankDebt" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">537,960</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1356">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_pp0p0_di_zj07dnKMhLb5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Less: Payments on loan</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:PaymentsForProceedsFromDepositOnLoan" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">943,080</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:PaymentsForProceedsFromDepositOnLoan" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,395,915</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_408_eus-gaap--LongTermDebt_iE_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance, December 31</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,366,598</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,847,638</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A4_zUEUFxz8sQYf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 36; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->19<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfDebtInstrumentsTextBlock"><p id="xdx_89E_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zlD96N4W2vQ" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zzm7v86wfPT5" style="display: none">SCHEDULE OF OUTSTANDING BALANCE LOAN</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold">Outstanding balance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">a) Long term debt &#8211; Harris Bank</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_zxIjmuX8HNvc" title="Long-term Debt" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1366">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_pdp0" title="Long-term Debt" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1368">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">b) Long term debt &#8211; Harris Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_zkcKMXdRNT97" title="Long-term Debt" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1370">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_pdp0" title="Long-term Debt" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1372">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">c) Long term debt &#8211; Midland States Bank</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z0Szl05z63ye" title="Long-term Debt" style="width: 16%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1374">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_pp0p0" title="Long-term Debt" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31_custom_MidlandStatesBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">125,543</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">d) Long term debt &#8211; Ford Credit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_zvnkahcpB0vh" title="Long-term Debt" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1378">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_pdp0" title="Long-term Debt" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1380">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">e) Long term debt &#8211; PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zJJe1FRLlSd7" title="Long-term Debt" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1382">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_pp0p0" title="Long-term Debt" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31_custom_PaycheckProtectionProgramMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">322,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">f) Long term debt - PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zCMV8dAvLlCk" title="Long-term Debt" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1386">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_pp0p0" title="Long-term Debt" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31_custom_PaycheckProtectionProgramOneMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">215,960</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">g) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zYZjQdY2Yu7i" title="Long-term Debt" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_MidlandStatesBankOneMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,554,044</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_pp0p0" title="Long-term Debt" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31_custom_MidlandStatesBankOneMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,920,976</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">h) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zIGWyQzrWaRh" title="Long-term Debt" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_MidlandStatesBankTwoMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">381,674</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_pp0p0" title="Long-term Debt" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31_custom_MidlandStatesBankTwoMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">822,380</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">i) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_z2wGuHePLfYb" title="Long-term Debt" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_StockYardsBankTrustMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">430,880</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_pp0p0" title="Long-term Debt" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31_custom_StockYardsBankTrustMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">440,779</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Long-term Debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--LongTermDebt_iI_pp0p0_c20211231_zHD4j1ib0Zt7" title="Long-term Debt" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,366,598</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--LongTermDebt_c20201231_pp0p0" title="Long-term Debt" style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,847,638</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Less: current portion</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20211231_zWMsVH9ij1wd" title="Less: current portion" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">793,574</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20201231_zhXXib1qq172" title="Less: current portion" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">848,794</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--LongTermDebtNoncurrent_iI_pp0p0_c20211231_zD2kzuaN6BS5" title="Long term balance" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,573,024</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_984_eus-gaap--LongTermDebtNoncurrent_c20201231_pp0p0" title="Long term balance" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,998,844</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AE_z85PNFt0m3y3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:DebtDisclosureTextBlock"><p id="xdx_808_eus-gaap--DebtDisclosureTextBlock_zfVMBsOwiTj4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>13.
<span>Convertible Note Payable <b><span id="xdx_82C_zjOqL2wXfsC1" style="display: none">CONVERTIBLE NOTE PAYABLE</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
October 2018, the Company issued a convertible note payable in the amount of $<span id="xdx_900_eus-gaap--ConvertibleNotesPayable_c20181031__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_pp0p0" title="Convertible note payable"><ix:nonFraction name="us-gaap:ConvertibleNotesPayable" contextRef="AsOf2018-10-31_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,000,000</ix:nonFraction></span> in connection with the acquisition of EnP Investments
LLC. The convertible note is due on or before <span id="xdx_900_eus-gaap--DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear_dd_c20181001__20181031__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_ztv2wQZBM7D2" title="Debt convertible due date"><ix:nonNumeric contextRef="From2018-10-012018-10-31_custom_EnpInvestmentsLLCMember" format="ixt:datemonthdayyearen" name="us-gaap:DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear">September 30, 2023</ix:nonNumeric></span> with <span id="xdx_90F_eus-gaap--DebtConversionConvertedInstrumentRate_pid_dp_uPure_c20181001__20181031__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_z1hjVYMeGb24" title="Debt conversion ratio"><ix:nonFraction name="us-gaap:DebtConversionConvertedInstrumentRate" contextRef="From2018-10-012018-10-31_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">5</ix:nonFraction></span>% interest due per year. At the option of the holder, the Note
may be converted into <span id="xdx_90B_eus-gaap--DebtConversionConvertedInstrumentSharesIssued1_pid_c20181001__20181031__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_zeyckbLQecY" title="Debt converted to shares"><ix:nonFraction name="us-gaap:DebtConversionConvertedInstrumentSharesIssued1" contextRef="From2018-10-012018-10-31_srt_ParentCompanyMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">400,000</ix:nonFraction></span> shares in the Company&#8217;s common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
June 2019, the holder opted to convert $<span id="xdx_90F_eus-gaap--DebtConversionConvertedInstrumentAmount1_c20190601__20190630__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pp0p0" title="Debt converted to shares, amount"><ix:nonFraction name="us-gaap:DebtConversionConvertedInstrumentAmount1" contextRef="From2019-06-012019-06-30_srt_ParentCompanyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></span> of the convertible note payable into <span id="xdx_90C_eus-gaap--DebtConversionConvertedInstrumentSharesIssued1_c20190601__20190630__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pdd" title="Debt converted to shares"><ix:nonFraction name="us-gaap:DebtConversionConvertedInstrumentSharesIssued1" contextRef="From2019-06-012019-06-30_srt_ParentCompanyMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">200,000</ix:nonFraction></span> shares of the Company&#8217;s common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
April 2020, the Company repaid the remaining principal balance of $<span id="xdx_902_eus-gaap--DebtConversionConvertedInstrumentAmount1_c20200401__20200430__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pp0p0" title="Debt converted to shares, amount"><ix:nonFraction name="us-gaap:DebtConversionConvertedInstrumentAmount1" contextRef="From2020-04-012020-04-30_srt_ParentCompanyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></span> and accrued interest of $<span id="xdx_90E_eus-gaap--DebtInstrumentIncreaseAccruedInterest_c20200401__20200430__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pp0p0" title="Accrued interest"><ix:nonFraction name="us-gaap:DebtInstrumentIncreaseAccruedInterest" contextRef="From2020-04-012020-04-30_srt_ParentCompanyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,046</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:IncomeTaxDisclosureTextBlock"><p id="xdx_800_eus-gaap--IncomeTaxDisclosureTextBlock_zjSVv83JGqm1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>14.
<span>Income Taxes <span id="xdx_823_zJKm2vKab4Ca" style="display: none">INCOME TAXES</span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"><p id="xdx_89C_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zhXy14BwRlH8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
provision for income tax expense (benefit) is comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zIKV0MBR38fg" style="display: none">SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT)</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231_zznX9k44fEDl" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20200101__20201231_zYbdMcJRW6mb" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zpU4nxvSzL3g" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Current tax, federal</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,309,503</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">739,113</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_maCITEBzvlG_ztBreY74xPtj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Current tax, state</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">592,394</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">334,361</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--CurrentForeignTaxExpenseBenefit_maCITEBzvlG_zbv9lmqqUbH8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Current tax, foreign</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CurrentForeignTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">91,285</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CurrentForeignTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">124,414</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iT_pp0p0_mtCITEBzvlG_maITEBz6BY_zAmv1UYdyF24" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Current tax, total</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,993,182</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,197,888</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_maDITEBzP63_zSyaSAm05Fk1" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Deferred income tax, federal</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">250,153</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">158,308</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_maDITEBzP63_zUlJl5zuNB2k" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred income tax, state</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">113,164</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">71,616</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredForeignIncomeTaxExpenseBenefit_maDITEBzP63_zY27j8MzXNzf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Deferred income tax, foreign</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1454">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">179,629</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz6BY_zGUWIX66RRfi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Deferred income tax, total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">363,317</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">409,553</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz6BY_z9mp6rKc9gQ3" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,356,499</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,607,441</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>


</ix:nonNumeric><p id="xdx_8A8_zJO7mIM0lUec" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 37; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->20<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"><p id="xdx_897_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zb9vNqNKt8S" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table reconciles the income tax expense at the U.S. Federal statutory rate to income tax expense at the Company&#8217;s effective
tax rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B4_zu5scLi9Z85h" style="display: none">SCHEDULE OF RECONCILIATION OF INCOME TAXES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231_zXc8yV8zkw3c" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_490_20200101__20201231_zntZieUtCgW7" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Income before tax</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,650,756</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,190,975</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_zLRRcG5UOrd9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">US statutory tax rates</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">30.50</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">%</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">30.50</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr id="xdx_40E_ecustom--ExpectedIncomeTaxRecovery_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Expected income tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:ExpectedIncomeTaxRecovery" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,028,481</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:ExpectedIncomeTaxRecovery" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,583,247</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--IncomeTaxReconciliationNondeductibleExpense_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Non-deductible items</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">29,508</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">60,470</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--IncomeTaxReconciliationOtherAdjustments_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Change in estimates and other</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">65,027</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">603,422</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--IncomeTaxReconciliationChangeInEnactedTaxRate_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Change in enacted tax rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInEnactedTaxRate" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">337,961</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1481">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--IncomeTaxReconciliationForeignIncomeTaxRateDifferential_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign tax rate difference</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">86,696</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">120,372</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Change in valuation allowance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">171,288</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">398,386</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--IncomeTaxExpenseBenefit_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Total income taxes</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,356,499</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,607,441</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--CurrentIncomeTaxExpenseBenefit_z3VCIfDA4USh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Current income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,993,182</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,197,888</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_zZKzGRevZ5u5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Deferred tax expense (recovery)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">363,317</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">409,553</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_zm04aIqHB76k" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Total income tax expense</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,356,499</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,607,441</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


</ix:nonNumeric><p id="xdx_8A0_zRk2enydd8l7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Deferred
taxes reflect the tax effects of temporary differences between the carrying amounts of assets and liabilities for financial reporting
purposes. Deferred tax assets (liabilities) at December 31, 2021 and 2020 are comprised of the following:</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"><p id="xdx_895_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_z9nqjPHOeW29" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zpx4QTlaOwV8" style="display: none">SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES)</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Canada</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-align: left; padding-left: 10pt">Non capital loss carryforwards</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z0OFHJOItPqc" title="Non capital loss carryforwards" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,443,371</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" title="Non capital loss carryforwards" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,638,357</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zGoz46ANdiY2" title="Intangible assets" style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">19,849</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" title="Intangible assets" style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">18,863</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Property, equipment and leaseholds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zRvbxhXcIHka" title="Property, equipment and leaseholds" style="text-align: right"><ix:nonFraction name="FSI:DeferredTaxAssetsPropertyPlantsAndEquipment" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">587,408</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" title="Property, equipment and leaseholds" style="text-align: right"><ix:nonFraction name="FSI:DeferredTaxAssetsPropertyPlantsAndEquipment" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">624,016</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Financial instruments</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zBBMSCqbfQH7" title="Financial instruments" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1515">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" title="Financial instruments" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsDerivativeInstruments" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">26,690</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_ecustom--DeferredTaxAssetsLiabilitiesGross_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z91gA393M848" title="Deferred tax asset (liability)" style="text-align: right"><ix:nonFraction name="FSI:DeferredTaxAssetsLiabilitiesGross" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,050,628</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--DeferredTaxAssetsLiabilitiesGross_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" title="Deferred tax asset (liability)" style="text-align: right"><ix:nonFraction name="FSI:DeferredTaxAssetsLiabilitiesGross" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,307,926</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Valuation allowance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zZihIEpGnnei" title="Valuation Allowance" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,050,628</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zgCKL5SSDBU6" title="Valuation Allowance" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,307,926</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Net deferred tax asset</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_ecustom--DeferredTaxAssetNet_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zlHzuZuMTp4j" title="Net Deferred tax asset" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1527">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_981_ecustom--DeferredTaxAssetNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pdp0" title="Net Deferred tax asset" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1529">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>US</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2021</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2020</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Net operating loss carryforwards</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z5DhnUchqwFi" title="Non capital loss carryforwards" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1531">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" title="Non capital loss carryforwards" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1533">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zxOsMADbQByl" title="Intangible assets" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1535">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" title="Intangible assets" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1537">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zLzZEBp3Fqkk" title="Investments" style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsInvestments" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">241,880</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zcjysrhuJ5Ga" title="Investments" style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsInvestments" contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">167,635</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Property, equipment and leaseholds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zAaup1v6dBGe" title="Property, equipment and leaseholds" style="text-align: right">(<ix:nonFraction name="FSI:DeferredTaxAssetsPropertyPlantsAndEquipment" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">68,282</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" title="Property, equipment and leaseholds" style="text-align: right">(<ix:nonFraction name="FSI:DeferredTaxAssetsPropertyPlantsAndEquipment" contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">66,116</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt"><span style="font-family: Times New Roman, Times, Serif">Property, equipment and leaseholds</span></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zT8Pe4EomrTh" title="Property, equipment and leaseholds" style="text-align: right"><ix:nonFraction name="FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,697</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zXHE08whnfzc" title="Property, equipment and leaseholds" style="text-align: right"><ix:nonFraction name="FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne" contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">201,393</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Financial instruments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0IPCgahGEJ9" title="Financial instruments" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1551">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" title="Financial instruments" style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsDerivativeInstruments" contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">98,210</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Deferred tax asset not recognized</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_ecustom--DeferredTaxAssetNotRecognized_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8fmlH1x77U6" title="Deferred tax asset not recognized" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1555">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_ecustom--DeferredTaxAssetNotRecognized_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" title="Deferred tax asset not recognized" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1557">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Net deferred tax asset (liability)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_989_ecustom--DeferredTaxAssetLiabilitiesNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zG0di8pQy32d" title="Net deferred tax asset (liability)" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="FSI:DeferredTaxAssetLiabilitiesNet" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">297,465</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_984_ecustom--DeferredTaxAssetLiabilitiesNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" title="Net deferred tax asset (liability)" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="FSI:DeferredTaxAssetLiabilitiesNet" contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">65,852</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AF_zezOmz0g4aa8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has non-capital loss carryforwards of approximately $<span id="xdx_901_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zLgu9WsnXFde" title="Operating loss carryforwards"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,275,526</ix:nonFraction></span> (2020 - $<span id="xdx_909_eus-gaap--OperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" title="Operating loss carryforwards"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,068,054</ix:nonFraction></span>) which may be carried forward to apply against
future year income tax for Canadian income tax purposes, subject to the final determination by taxation authorities, expiring in the
following years:</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="FSI:ScheduleOfNonOperatingLossCarryforwardsTableTextBlock"><p id="xdx_89B_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zwhwvsgTC2l7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B2_zZ7CVnDqFLHi" style="display: none">SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1.5pt; text-align: center">`</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: right">Loss</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 66%; text-align: right">2029</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandTwentyNineTaxYearMember_zUIagJc2hIv6" title="Total" style="width: 30%; text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_custom_TwoThousandTwentyNineTaxYearMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">891,014</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right">2030</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zS68ahb6bGNg" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_custom_TwoThousandThirtyTaxYearMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,081,844</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: right">2031</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneTaxYearMember_zR9uFe9AJ6hl" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_custom_TwoThousandThirtyOneTaxYearMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,245,577</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right">2037</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenTaxYearMember_zHNRFAGUkS15" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_custom_TwoThousandThirtySevenTaxYearMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,238,533</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: right">2038</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyEightTaxYearMember_zKiQnMQuwq6h" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_custom_TwoThousandThirtyEightTaxYearMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">372,149</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right">2039</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineTaxYearMember_zVw76eInNyE1" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_custom_TwoThousandThirtyNineTaxYearMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">72,378</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: right">2040</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyTaxYearMember_zsRdBU1IpPA7" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_custom_TwoThousandFortyTaxYearMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">166,494</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right; padding-bottom: 1.5pt">2041</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyOneTaxYearMember_z483yRk4B1t1" title="Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_custom_TwoThousandFortyOneTaxYearMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">207,537</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z3nu3wpmTcug" title="Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,275,526</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A2_zGwIXl5gS6Ik" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
at December 31, 2021, the Company has no net operating loss carryforwards available for US tax purposes.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 38; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->21<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Accounting
for Uncertainty for Income Tax</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
at December 31, 2021 and 2020, the Company&#8217;s consolidated balance sheets did not reflect a liability for uncertain tax positions,
nor any accrued penalties or interest associated with income tax uncertainties. The Company has no income tax examinations in progress.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:EarningsPerShareTextBlock"><p id="xdx_808_eus-gaap--EarningsPerShareTextBlock_zYQNjKmTfFu5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>15.
<span>Income Per Share <span id="xdx_822_zzjzkGwbTqj2" style="display: none">INCOME PER SHARE</span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"><p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zC5Qv9C2ZJIk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company presents both basic and diluted income per share on the face of its consolidated statements of income. Basic and diluted income
per share are calculated as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B5_zRKNSDA8fBZ7" style="display: none">SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20210101__20211231_zTnaJD69jXL8" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20200101__20201231_zN7R8zCjus62" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--NetIncomeLoss_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Net income attributable to controlling interest</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,449,162</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,977,050</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Weighted average common shares outstanding:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zSgjzHebABCa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,316,254</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,240,641</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zK6trIznl7l1" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,505,522</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,302,552</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income per common share attributable to controlling interest:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--EarningsPerShareBasicAndDiluted_pid_zmwdHaij9uWk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Basic and diluted</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasicAndDiluted" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.28</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasicAndDiluted" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.24</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AE_zeFuNgVgBEi5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certain
stock options whose terms and conditions are described in Note 16, &#8220;Stock Options&#8221; could potentially dilute basic EPS in
the future, but were not included in the computation of diluted EPS because to do so would have been anti-dilutive. Those anti-dilutive
options are as follows.</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock"><p id="xdx_898_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_ztagcukRm9sa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zBMAIldF5Ele" style="display: none">SCHEDULE OF ANTI-DILUTIVE OPTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20210101__20211231_zYv5MGJZGD8a" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_494_20200101__20201231_zGLHq8pAQOuk" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Anti-dilutive options</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">21,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">507,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AF_zSDTZt07dEc8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">There
were <span id="xdx_906_eus-gaap--PreferredStockSharesIssued_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zdxnaiYynTj7" title="Preferred stock, shares issued"><span id="xdx_903_eus-gaap--PreferredStockSharesIssued_iI_pid_do_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zffwy9ewQZf6" title="Preferred stock, shares issued"><span id="xdx_902_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zP04jOprSRI" title="Preferred stock, shares outstanding"><span id="xdx_90E_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zfnGQ2H898ma" title="Preferred stock, shares outstanding"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt-sec:numwordsen" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt-sec:numwordsen" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt-sec:numwordsen" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt-sec:numwordsen" decimals="INF" unitRef="Shares">no</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span></span></span></span> preferred shares issued and outstanding during the years ended December 31, 2021 or 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"><p id="xdx_80B_eus-gaap--DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_zeWFW91uVtSi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>16. <span>Stock
Options</span></b></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. <b><span id="xdx_82A_z8H87AP339g4" style="display: none">STOCK OPTIONS</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has a stock option plan (&#8220;Plan&#8221;). The purpose of this Plan is to provide additional incentives to key employees,
officers, directors and consultants of the Company and its subsidiaries in order to help attract and retain the best available personnel
for positions of responsibility and otherwise promote the success of the Company&#8217;s business. It is intended that options issued
under this Plan constitute non-qualified stock options. The general terms of awards under the option plan are that <span id="xdx_90B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_pid_dp_uPure_c20210101__20211231_z5B2k3Hf7cSg" title="Options granted percentage"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">100</ix:nonFraction></span>% of the options
granted will vest the year following the grant. The maximum term of options granted is <span id="xdx_902_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_dtY_c20210101__20211231_zHI7wATrWLt5" title="Options maximum granted term"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">5</ix:nonNumeric></span> years and the exercise price for all options
are issued for not less than fair market value at the date of the grant.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 39; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->22<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"><p id="xdx_899_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_znjS7O4MEt0d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the Company&#8217;s stock option activities for the years ended December 31, 2021 and 2020:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zzIeDf6q4poh" style="display: none">SCHEDULE OF STOCK OPTION ACTIVITIES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Number of shares</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Exercise <br /> price per share</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Weighted <br /> average <br /> exercise price</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20200101__20201231_zS2Rbc4KtpCa" title="Number of shares, Beginning Balance" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="AsOf2019-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">635,000</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zOq9sd0lBBh" title="Exercise price per share, Beginning Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" contextRef="AsOf2019-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.75</ix:nonFraction></span> &#8211; <span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zhfSMjkGhmFd" title="Exercise price per share, Beginning Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" contextRef="AsOf2019-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.75</ix:nonFraction></span></span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20200101__20201231_zIDPQSsbtJyc" title="Weighted average exercise price, Beginning Balance" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="AsOf2019-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.35</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231_zIsvPjNeS8f1" title="Number of shares, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">172,000</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20200101__20201231_zt1Hg13sVnx9" title="Exercise price per share, Granted" style="text-align: right"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.44</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_z6VdbbYVPvMc" title="Weighted average exercise price, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.44</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cancelled or expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20200101__20201231_zzBWqgMuG00i" title="Number of shares, Cancelled or expired" style="text-align: right">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">13,000</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zfVOUb3Odtr1" title="Exercise price per share, Cancelled or expired"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" contextRef="From2020-01-012020-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.44</ix:nonFraction></span> &#8211; <span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_znXBmOoBuE1j" title="Exercise price per share, Cancelled or expired"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" contextRef="From2020-01-012020-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.46</ix:nonFraction></span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zWsLMnDjH1o3" title="Weighted average exercise price, Cancelled or expired" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.75</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20200101__20201231_zGfonJxbp7V7" title="Number of shares, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">45,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zcWkZ7vtwilh" title="Exercise price per share, Exercised"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" contextRef="From2020-01-012020-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.75</ix:nonFraction></span> &#8211; <span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zH2RFT5bz6Yd" title="Exercise price per share, Exercised"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" contextRef="From2020-01-012020-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.05</ix:nonFraction></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zU0HGU9pN4qd" title="Weighted average exercise price, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.88</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_z8WhswlEmPn2" title="Number of shares, Beginning Balance" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">749,000</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zTzvjifCOc73" title="Exercise price per share, Beginning Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" contextRef="AsOf2020-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.75</ix:nonFraction></span> &#8211; <span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zroR7IBAf8t5" title="Exercise price per share, Beginning Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" contextRef="AsOf2020-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">4.13</ix:nonFraction></span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zsIC8HS7ywva" title="Weighted average exercise price, Beginning Balance" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.42</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_zCXLWRfEOJg1" title="Number of shares, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">170,000</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20210101__20211231_ztGhNRlwXHvb" title="Exercise price per share, Granted" style="text-align: right"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.61</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zprT2Hkh4erl" title="Weighted average exercise price, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.61</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cancelled or expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zDsbJuSjxuGl" title="Number of shares, Cancelled or expired" style="text-align: right">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">34,799</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_z7o32cI3BWpa" title="Exercise price per share, Cancelled or expired"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" contextRef="From2021-01-012021-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.42</ix:nonFraction></span> &#8211; <span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z9oLms0KgJce" title="Exercise price per share, Cancelled or expired"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" contextRef="From2021-01-012021-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.46</ix:nonFraction></span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zGa6kYbs1XHa" title="Weighted average exercise price, Cancelled or expired" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.30</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_zeXGPRJWWwXk" title="Number of shares, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">94,701</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zl7vUN1Ys8Hf" title="Exercise price per share, Exercised"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" contextRef="From2021-01-012021-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.75</ix:nonFraction></span> &#8211; <span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zwczgqY1iu5h" title="Exercise price per share, Exercised"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" contextRef="From2021-01-012021-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.46</ix:nonFraction></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zzEfYVu9ydZd" title="Weighted average exercise price, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.58</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20210101__20211231_znM7mTqiOJKk" title="Number of shares, Ending Balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">789,500</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zf5WJRS4gp32" title="Exercise price per share, Ending Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" contextRef="AsOf2021-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.42</ix:nonFraction></span> &#8211; <span id="xdx_904_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zXEFq17pHWHf" title="Exercise price per share, Ending Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" contextRef="AsOf2021-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">4.13</ix:nonFraction></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20210101__20211231_zU6vMW1gdVk1" title="Weighted average exercise price, Ending Balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.78</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Exercisable, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20210101__20211231_zuMK2aQovmDi" title="Number of shares Exercisable, Ending Balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">564,500</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zHBclOTtJGp1" title="Exercise price per share Exercisable, Ending Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" contextRef="AsOf2021-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.42</ix:nonFraction></span> &#8211; <span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zBtXOLQ4ATdd" title="Exercise price per share Exercisable, Ending Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" contextRef="AsOf2021-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">4.13</ix:nonFraction></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_iE_pid_c20210101__20211231_zFkcSP8GMUNg" title="Weighted average exercise price Exercisable, Ending Balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.63</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


</ix:nonNumeric><p id="xdx_8A0_zMsc0MKMWvRi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
weighted-average remaining contractual life of outstanding options is <span id="xdx_90C_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_dtY_c20210101__20211231_zouuIHPC5Ul1" title="Weighted-average remaining contractual life"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">3.20</ix:nonNumeric></span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"><p id="xdx_894_eus-gaap--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_zuCejW6QIz39" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of each option grant is calculated using the following weighted average assumptions:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zDrAqEWJzNQc" style="display: none">SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 85%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Expected life &#8211; years</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right"><span id="xdx_90D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_z1aOnTmciazd" title="Expected life - years"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">3.0</ix:nonNumeric></span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right"><span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20200101__20201231_zEFMk2orsHd" title="Expected life - years"><ix:nonNumeric contextRef="From2020-01-012020-12-31" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">3.0</ix:nonNumeric></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Interest rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_z39LuDBouI9j" title="Interest rate" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.23</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20200101__20201231_za5SBEjiZHHa" title="Interest rate" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.37</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Volatility</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_ztcvnyZGjLJd" title="Volatility" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">63.28</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20200101__20201231_zC7tSSSdxbJ8" title="Volatility" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">70.14</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Weighted average fair value of options granted</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zHaABFnsUw32" title="Weighted average fair value of options granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.23</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20200101__20201231_zn7kRvqkujjh" title="Weighted average fair value of options granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.12</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A5_zRIBX5Q0wNX" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, the Company granted <span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zQ62JT4pM8j5" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2021-01-012021-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">45,000</ix:nonFraction></span> (2020 &#8211; <span id="xdx_909_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zwJa9cbyv8hh" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2020-01-012020-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">45,000</ix:nonFraction></span>) stock options to consultants and has applied ASC 718
using the Black-Scholes option-pricing model, which resulted in expenses of $<span id="xdx_904_eus-gaap--StockOptionPlanExpense_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_ziV7vLRVYyme" title="Stock option expense"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="From2021-01-012021-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,860</ix:nonFraction></span> (2020 - $<span id="xdx_909_eus-gaap--StockOptionPlanExpense_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_pp0p0" title="Stock option expense"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="From2020-01-012020-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,080</ix:nonFraction></span>). Options granted in other years
resulted in additional expenses of $<span id="xdx_904_ecustom--AdditionalExpensesDueToOptionsGranted_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zUrqincI1B61" title="Additional expenses due to options granted"><ix:nonFraction name="FSI:AdditionalExpensesDueToOptionsGranted" contextRef="From2021-01-012021-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">51,210</ix:nonFraction></span> (2020 &#8211; $<span id="xdx_909_ecustom--AdditionalExpensesDueToOptionsGranted_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_pp0p0" title="Additional expenses due to options granted"><ix:nonFraction name="FSI:AdditionalExpensesDueToOptionsGranted" contextRef="From2020-01-012020-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">43,905</ix:nonFraction></span>). During the year ended December 31, 2021, employees were granted <span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zgIImuFaXuSe" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2021-01-012021-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">125,000</ix:nonFraction></span>
(2020 &#8211; <span id="xdx_90E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_z8RjH5TJJs4g" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2020-01-012020-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">127,000</ix:nonFraction></span>) stock options, which resulted in expenses of $<span id="xdx_901_eus-gaap--StockOptionPlanExpense_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zGSn9K0qXZ9d" title="Stock option expense"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="From2021-01-012021-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">38,500</ix:nonFraction></span> (2020 &#8211; $<span id="xdx_904_eus-gaap--StockOptionPlanExpense_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_pp0p0" title="Stock option expense"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="From2020-01-012020-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">28,316</ix:nonFraction></span>). Options granted in other years resulted
in additional expenses in the amount of $<span id="xdx_909_ecustom--AdditionalExpensesDueToOptionsGranted_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_z7VNLET6Lrpi" title="Additional expenses due to options granted"><ix:nonFraction name="FSI:AdditionalExpensesDueToOptionsGranted" contextRef="From2021-01-012021-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">106,542</ix:nonFraction></span> for employees during the year ended December 31, 2021 (2020 - $<span id="xdx_90A_ecustom--AdditionalExpensesDueToOptionsGranted_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_pp0p0" title="Additional expenses due to options granted"><ix:nonFraction name="FSI:AdditionalExpensesDueToOptionsGranted" contextRef="From2020-01-012020-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">73,711</ix:nonFraction></span>). There were <span id="xdx_906_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zYb3BkHUBTnc" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-012021-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">61,500</ix:nonFraction></span>
employee and <span id="xdx_90B_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_ziOWcqpH7OS9" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-012021-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">33,201</ix:nonFraction></span> consultant stock options exercised during the year ended December 31, 2021 (2020 &#8211; <span id="xdx_904_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zwAUSXuzCu11" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2020-01-012020-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">35,000</ix:nonFraction></span> employee; <span id="xdx_90D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zC62VFSkZHj6" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2020-01-012020-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">10,000</ix:nonFraction></span>
consultant).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2021, there was approximately $<span id="xdx_90A_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zq3zi5BiONr3" title="Compensation expense related to non-vested awards"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">229,918</ix:nonFraction></span> of compensation expense related to non-vested awards. This expense is expected
to be recognized over a weighted average period of <span id="xdx_908_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_dtY_c20210101__20211231_zDJljnQaKsqi" title="Compensation expense related to non-vested awards, weighted average period"><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">1.0</ix:nonNumeric></span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
aggregate intrinsic value of vested options outstanding at December 31, 2021 is $<span id="xdx_905_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zshdH4mmQ2d" title="Aggregate intrinsic value of vested options"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">712,945</ix:nonFraction></span> (2020 &#8211; $<span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_pp0p0_dxL_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zDHSn9EB1FF" title="Aggregate intrinsic value of vested options::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1758">nil</span></span>). The intrinsic value of
options exercised during the year was $<span id="xdx_903_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_pp0p0_c20210101__20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zwpqNa9FJyih" title="Aggregate intrinsic value of vested options exercised"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" contextRef="From2021-01-012021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">203,701</ix:nonFraction></span> (2020 - $<span id="xdx_90B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_pp0p0_c20200101__20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z4dm0oFd29Ti"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" contextRef="From2020-01-012020-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">56,230</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock"><p id="xdx_808_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_z8XGhNlav3yl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>17. <span>Capital
Stock</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. <b><span id="xdx_82A_z0i7qj6scvp8" style="display: none">CAPITAL STOCK</span></b></span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, <span id="xdx_907_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__custom--EmployeesStockOptionMember_z6dnol2sk4C8" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-012021-12-31_custom_EmployeesStockOptionMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">61,500</ix:nonFraction></span> shares were issued upon the exercise of employee stock options (2020 &#8211; <span id="xdx_90D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__us-gaap--DerivativeInstrumentRiskAxis__custom--EmployeesStockOptionMember_zOmvq8C2pskg" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2020-01-012020-12-31_custom_EmployeesStockOptionMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">35,000</ix:nonFraction></span>) and <span id="xdx_90E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__custom--ConsultantsStockOptionsMember_zkThfUnhqcvh" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-012021-12-31_custom_ConsultantsStockOptionsMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">33,201</ix:nonFraction></span>
shares were issued upon the exercise of consultant stock options (2020 &#8211; <span id="xdx_90E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__us-gaap--DerivativeInstrumentRiskAxis__custom--ConsultantsStockOptionsMember_zt4bcYOhrx96" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2020-01-012020-12-31_custom_ConsultantsStockOptionsMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">10,000</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
March 19, 2020, the Company suspended the annual dividend until further notice due to the uncertainty surrounding the COVID-19 virus.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:MinorityInterestDisclosureTextBlock"><p id="xdx_800_eus-gaap--MinorityInterestDisclosureTextBlock_zG8yz2X2osTe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>18.
<span>Non-Controlling Interests <b><span id="xdx_825_zt15dL5UqNUf" style="display: none">NON-CONTROLLING INTERESTS</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ENP
Investments is a limited liability corporation (LLC) that <span style="background-color: white">manufactures and distributes golf, turf
and ornamental agriculture products in Mendota, Illinois.</span> The Company owns a <span id="xdx_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zTucbgQaqYm2" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>% interest in ENP Investments through its wholly-owned
subsidiary NanoChem. An unrelated party owns the remaining <span id="xdx_900_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_z3RnYMwBq3e7" title="Related party owner ship percentage"><ix:nonFraction name="us-gaap:MinorityInterestOwnershipPercentageByParent" contextRef="AsOf2021-12-31_custom_EnpnvestmentsLlcMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">35</ix:nonFraction></span>% interest in ENP Investments. As of December 31, 2020, ENP Mendota is a
wholly owned subsidiary of ENP Investments. ENP Mendota leases warehouse space. For financial reporting purposes, the assets, liabilities
and earnings of both of the LLC&#8217;s are consolidated into these financial statements. The unrelated third party&#8217;s ownership
interest in the LLC is recorded in non-controlling interests in these consolidated financial statements. The non-controlling interest
represents the non-controlling unitholder&#8217;s interest in the earnings and equity of ENP Investments. ENP Investments is allocated
to the BCPA segment.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 40; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->23<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ENP
Investments makes cash distributions to its equity owners based on formulas defined within its Ownership Interest Purchase Agreement
dated October 1, 2018. Distributions are defined in the Ownership Interest Purchase Agreement as cash on hand to the extent it exceeds
current and anticipated long-term and short-term needs, including, without limitation, needs for operating expenses, debt service, acquisitions,
reserves, and mandatory distributions, if any.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">From
the effective date of acquisition onward, the minimum distributions requirements under the Ownership Interest Purchase Agreement were
satisfied. The total distribution from the effective date of acquisition onward was $<span id="xdx_90E_eus-gaap--PaymentsToMinorityShareholders_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zYUiWS0GgQGl" title="Partnership distribution to non-controlling interest"><ix:nonFraction name="us-gaap:PaymentsToMinorityShareholders" contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,924,995</ix:nonFraction></span>.</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="FSI:ScheduleOfDistributionsTableTextBlock"><p id="xdx_89D_ecustom--ScheduleOfDistributionsTableTextBlock_zea70KsXuEaj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_z1sol5lcRGog" style="display: none">SCHEDULE OF DISTRIBUTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_909_eus-gaap--MinorityInterest_iS_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zb5hPXiwTtN8" title="Distribution to noncontrolling interests, Beginning balance"><ix:nonFraction name="us-gaap:MinorityInterest" contextRef="AsOf2019-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,550,149</ix:nonFraction></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Distribution</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyvr3wsiDbD4" title="Distribution" style="text-align: right">(<ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2020-01-012020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">594,882</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Non-controlling interest share of income</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zv8cxceY2kad" title="Non-controlling interest share of income" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" contextRef="From2020-01-012020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">606,484</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--MinorityInterest_iS_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyrkhqvgJlk5" title="Distribution to noncontrolling interests, Beginning balance" style="text-align: right"><ix:nonFraction name="us-gaap:MinorityInterest" contextRef="AsOf2020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,561,751</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Distribution</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zBWbrMElBeSg" title="Distribution" style="text-align: right">(<ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">804,003</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Non-controlling interest share of income</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zpZmgpFeH8bl" title="Non-controlling interest share of income" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">845,095</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98D_eus-gaap--MinorityInterest_iE_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zbjMg473C1J5" title="Distribution to noncontrolling interests, Ending balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MinorityInterest" contextRef="AsOf2021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,602,843</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AC_zPfa6Sx7r0O2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, the Company had sales of $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpInvestmentMember_zkOaKJpxurN9" title="Revenue"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_EnpInvestmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,877,690</ix:nonFraction></span> (2020 - $<span id="xdx_90C_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpInvestmentMember_zXdhwtGzkgYl" title="Revenue"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2020-01-012020-12-31_custom_EnpInvestmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,094,622</ix:nonFraction></span>) to the party that holds <span id="xdx_908_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20211231__srt--OwnershipAxis__custom--EnpInvestmentMember_ziIju1KkX4oj" title="Equity Method Investment, Ownership Percentage"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2021-12-31_custom_EnpInvestmentMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">35</ix:nonFraction></span>% interest in ENP
Investments, of which $<span id="xdx_906_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__srt--OwnershipAxis__custom--EnpInvestmentMember_ziIuvlMmHNe5" title="Accounts Receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2021-12-31_custom_EnpInvestmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,215,119</ix:nonFraction></span> is included within Accounts Receivable as of December 31, 2021 (2020 &#8211; $<span id="xdx_90B_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__srt--OwnershipAxis__custom--EnpInvestmentMember_zykCJi68W745" title="Accounts Receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2020-12-31_custom_EnpInvestmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,056,631</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:SegmentReportingDisclosureTextBlock"><p id="xdx_802_eus-gaap--SegmentReportingDisclosureTextBlock_zw2LWlr7dgqh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>19. <span>Segmented,
Significant Customer Information and Economic Dependency</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. <b><span id="xdx_82D_zdr6NfUY1ZCk" style="display: none">SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</span></b></span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company operates in two segments:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)
Energy and water conservation products (as shown under the column heading &#8220;EWCP&#8221; below), which consists of a (i) liquid swimming
pool blankets which saves energy and water by inhibiting evaporation from the pool surface, and (ii) food-safe powdered form of the active
ingredient within the liquid blankets and which are designed to be used in still or slow moving drinking water sources.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
Biodegradable polymers (&#8220;BCPA&#8217;s&#8221;), also known as TPA&#8217;s, used by the petroleum, chemical, utility and mining industries
to prevent corrosion and scaling in water piping. This product can also be used in detergents to increase biodegradability and in agriculture
to increase crop yields by enhancing fertilizer uptake.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accounting policies of the segments are the same as those described in Note 2, <i>Significant Accounting Policies</i>. The Company evaluates
performance based on profit or loss from operations before income taxes, not including nonrecurring gains and losses and foreign exchange
gains and losses.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s reportable segments are strategic business units that offer different, but synergistic products and services. They are
managed separately because each business requires different technology and marketing strategies.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock"><p id="xdx_898_eus-gaap--ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_z9JpYl8VfcX4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year
ended December 31, 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BE_z0ESYCLHXiFc" style="display: none">SCHEDULE OF REPORTABLE SEGMENTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">EWCP</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">BCPA</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Consolidated</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: justify">Sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zbTIyQNLISx" title="Sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">420,811</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z2k9VpxaP1T8" title="Sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">33,995,524</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zFj3U5O0DhG7" title="Sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">34,416,335</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zcx7l3qMsNa" title="Interest expense" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1817">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zeVOc9LVx5Ne" title="Interest expense" style="text-align: right"><ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">199,930</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zOjOtdFsRDSi" title="Interest expense" style="text-align: right"><ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">199,930</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zc5IDI00Uh5e" title="Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">40,247</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPBdp4HuUDv2" title="Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">925,688</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJDPoEAHRAOf" title="Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">965,935</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Current and deferred income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJS9lIy0kfW" title="Current and deferred income tax expense" style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">24,384</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zzz2lOtxWwVi" title="Current and deferred income tax expense" style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,361,298</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zfsxliJ06Qg9" title="Current and deferred income tax expense" style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,385,682</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Segment profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zXZBpTniEIE3" title="Segment profit" style="text-align: right">(<ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">368,994</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zUuBichGMrLe" title="Segment profit" style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,818,156</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_ztiqPWrcCDJh" title="Segment profit" style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,449,162</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Segment assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zoHbfr1qBjdk" title="Segment assets" style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,929,537</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z3NIQmNJ6Nyf" title="Segment assets" style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">37,621,733</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_ecustom--Segmentassets_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z1gbw8JexfB3" title="Segment assets" style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">39,551,270</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Expenditures for segment assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pdp0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zp8NMpih4Rxe" title="Expenditures for segment assets" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1847">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zHDv4dYXQPZh" title="Expenditures for segment assets" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">782,219</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPPrOnJMOaw4" title="Expenditures for segment assets" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">782,219</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 41; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->24<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year
ended December 31, 2020:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">EWCP</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">BCPA</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Consolidated</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: justify">Sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">334,423</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">31,073,031</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">31,407,454</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Interest expense" style="text-align: right"><ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">54</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Interest expense" style="text-align: right"><ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">260,603</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--InterestExpense_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Interest expense" style="text-align: right"><ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">260,657</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">41,969</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">809,703</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--DepreciationNonproduction_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Depreciation" style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">851,672</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Current and deferred income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Current and deferred income tax expense" style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">121,164</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Current and deferred income tax expense" style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,486,277</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Current and deferred income tax expense" style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,607,441</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Segment profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Segment profit" style="text-align: right">(<ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">536,220</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Segment profit" style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,513,270</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ProfitLoss_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Segment profit" style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,977,050</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Segment assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Segment assets" style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,111,501</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Segment assets" style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">32,975,887</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--Segmentassets_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Segment assets" style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">35,087,388</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Expenditures for segment assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pdp0" title="Expenditures for segment assets" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1889">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Expenditures for segment assets" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,071,108</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" title="Expenditures for segment assets" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,071,108</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AE_zUzkHsIuUrlk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock"><p id="xdx_89F_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zGJ4aCueOhLa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Sales
by territory are shown below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BB_z5CCCs7BAQ47" style="display: none">SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--CA_zgjIwDWnm8O8" title="Sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_country_CA" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">525,900</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" title="Sales" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2020-01-012020-12-31_country_CA" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">562,626</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">United States and abroad</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zJeRCfzX6ti" title="Sales" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_UnitedStatesandAbroadMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">33,890,435</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_pp0p0" title="Sales" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2020-01-012020-12-31_custom_UnitedStatesandAbroadMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">30,844,828</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231_zt1EE3Tz0lNb" title="Sales" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-01to2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">34,416,335</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231_pp0p0" title="Sales" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2020-01-012020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">31,407,454</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A1_zlQZLvFtBoGc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock"><p id="xdx_89B_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zpIZcCRVBrV9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s long-lived assets (property, equipment, intangibles, goodwill, leaseholds, patents and right of use assets) are located
in Canada and the United States as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B9_zQh1ee9jBluj" style="display: none">SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--CA_zrJKWXVr4Fc" title="Long-lived assets" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="AsOf2021-12-31_country_CA" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">191,752</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" title="Long-lived assets" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="AsOf2020-12-31_country_CA" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">445,663</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">United States</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--US_z2dur2RGH2d6" title="Long-lived assets" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="AsOf2021-12-31_country_US" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,105,202</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--US_pp0p0" title="Long-lived assets" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="AsOf2020-12-31_country_US" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,519,903</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231_zlD9rPf2jJ19" title="Long-lived assets" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,296,954</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98D_eus-gaap--NoncurrentAssets_c20201231_pp0p0" title="Long-lived assets" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,965,566</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AC_z0ucIFVIoM69" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Three
customers accounted for $<span id="xdx_902_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_z0VRy0Ab9mH" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2021-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">16,917,948</ix:nonFraction></span> (<span id="xdx_90B_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zDHstQhStsG6" title="Accounted risk percentage"><ix:nonFraction name="FSI:StockOptionExercisePercent" contextRef="From2021-01-012021-12-31_custom_ThreeCustomersMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">49</ix:nonFraction></span>%) of sales made in 2021 (2020 - $<span id="xdx_902_eus-gaap--AccountsReceivableNet_c20201231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_pp0p0" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2020-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">14,713,127</ix:nonFraction></span> or <span id="xdx_909_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20200101__20201231__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zdPxFNUcYzc5"><ix:nonFraction name="FSI:StockOptionExercisePercent" contextRef="From2020-01-012020-12-31_custom_ThreeCustomersMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">47</ix:nonFraction></span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2021-01-01to2021-12-31" escape="true" name="us-gaap:SubsequentEventsTextBlock"><p id="xdx_80C_eus-gaap--SubsequentEventsTextBlock_z7yV2ORWwlb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>20.
<span>Subsequent Events. <b><span id="xdx_825_zSTU0yR6baNa" style="display: none">SUBSEQUENT EVENTS</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company granted <span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20220329__srt--TitleOfIndividualAxis__custom--EmployeeMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zM8AjQZMW3Ue" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2022-01-012022-03-29_custom_EmployeeMember_us-gaap_SubsequentEventMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">5,000</ix:nonFraction></span> stock options to an employee and issued <span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20220329__srt--TitleOfIndividualAxis__custom--EmployeeMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--TypeOfArrangementAxis__custom--UponExerciseofStockOptionsMember_zAkOEac91P1c" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2022-01-012022-03-29_custom_EmployeeMember_us-gaap_SubsequentEventMember_custom_UponExerciseofStockOptionsMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">20,500</ix:nonFraction>
</span></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">shares to employees upon the exercise of
stock options in the three months ended March 29, 2022.</span></p>

</ix:nonNumeric><p id="xdx_819_z8jjR4X2IPbf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 42; Value: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%">F-<!-- Field: Sequence; Type: Arabic; Name: PageNo -->25<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    9.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Changes
    in and Disagreements with Accountants on Accounting and Financial Disclosure.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    9A.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Controls
    and Procedures.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
maintain disclosure controls and procedures that are designed to ensure that information required to be disclosed in our periodic reports
to the SEC is recorded, processed, summarized and reported within the time periods specified in the SEC&#8217;s rules and regulations,
and that such information is accumulated and communicated to our management, including our principal executive officer and principal
financial officer, as appropriate, to allow timely decisions regarding required disclosure. Our disclosure controls and procedures are
designed to provide a reasonable level of assurance of reaching our desired disclosure control objectives.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of the end of the period covered by this Annual Report on Form 10-K for the year ended December 31, 2021 we carried out an evaluation,
under the supervision and with the participation of management, including our principal executive officer and principal financial officer,
of the effectiveness of the design and operation of our disclosure controls and procedures (as defined under Rules 13a-15(e) and 15d-15(e)
under the Securities Exchange Act of 1934, as amended). Based upon that evaluation, our principal executive officer and principal financial
officer concluded that our disclosure controls and procedures are effective.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Management&#8217;s
Report on Internal Control Over Financial Reporting</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
management is responsible for establishing and maintaining adequate internal control over financial reporting and for the assessment
of the effectiveness of internal control over financial reporting. As defined by the Securities and Exchange Commission, internal control
over financial reporting is a process designed by, or under the supervision of our principal executive officer and principal financial
officer and implemented by our Board of Directors, management and other personnel, to provide reasonable assurance regarding the reliability
of financial reporting and the preparation of our financial statements in accordance with U.S. generally accepted accounting principles.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
internal control over financial reporting includes those policies and procedures that (1) pertain to the maintenance of records that,
in reasonable detail, accurately and fairly reflect our transactions and dispositions of our assets; (2) provide reasonable assurance
that transactions are recorded as necessary to permit preparation of our financial statements in accordance with U.S. generally accepted
accounting principles, and that our receipts and expenditures are being made only in accordance with authorizations of our management
and directors; and (3) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition
of our assets that could have a material effect on the financial statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Because
of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of
any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions,
or that the degree of compliance with the policies or procedures may deteriorate.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
connection with the preparation of our annual financial statements, management has undertaken an assessment of the effectiveness of our
internal control over financial reporting as of December 31, 2021, based on criteria established in Internal Control - Integrated Framework
issued by the Committee of Sponsoring Organizations of the Treadway Commission, or the 2013 COSO Framework. Management&#8217;s assessment
included an evaluation of the design of our internal control over financial reporting and testing of the operational effectiveness of
those controls.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
on this evaluation, management has concluded that our internal control over financial reporting was effective as of December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">There
was no change in our internal control over financial reporting that occurred during the period covered by this report that has materially
affected, or is reasonably likely to materially affect, our internal control over financial reporting.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 43; Options: NewSection; Value: 16 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->16<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    9B.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Other
    Information.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    10.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Directors,
    Executive Officers and Corporate Governance.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 45pt; text-align: justify; text-indent: -45pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 80%; border-collapse: collapse; margin-right: auto">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 20%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Name</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 8%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Age</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 68%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Position</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Daniel
    B. O&#8217;Brien</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">65</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">President,
    Chief Executive Officer, Principal Financial and Accounting Officer and a Director</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">John
    H. Bientjes</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">69</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Robert
    Helina</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">56</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Tom
    Fyles</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">70</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Ben
    Seaman</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">41</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">David
    Fynn</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">64</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Daniel
B. O&#8217;Brien has served as our President, Chief Executive Officer and Principal Financial and Accounting Officer, as well as a director
since June 1998. He has been involved in the swimming pool industry since 1990, when he founded our subsidiary, Flexible Solutions Ltd.
From 1990 to 1998 Mr. O&#8217;Brien was also a teacher at Brentwood College where he was in charge of outdoor education.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">John
H. Bientjes has been a director since 2000. From 1984 to 2018, Mr. Bientjes served as the manager of the Commercial Aquatic Supplies
Division of D.B. Perks &amp; Associates, Ltd., located in Vancouver, British Columbia, a company that markets supplies and equipment
to commercial swimming pools which are primarily owned by municipalities. Mr. Bientjes retired in 2018. Mr. Bientjes graduated in 1976
from Simon Fraser University in Vancouver, British Columbia with a Bachelor of Arts Degree in Economics and Commerce.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Robert
T. Helina has been a director since 2011. Mr. Helina has been involved in the financial services industry for over 30 years which has
given him extensive knowledge in business, economics and finance. His specialty is in Corporate Finance and Capital Markets. Mr. Helina
holds a Bachelor of Arts degree from Trinity Western University.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Thomas
M. Fyles has been a director since 2012. Dr. Fyles holds chemistry degrees from the University of Victoria (B.Sc. 1974) and York University
(Ph.D. 1977). Following postdoctoral work in France, he joined the Chemistry Department at the University of Victoria in 1979 where he
progressed through the academic ranks to Professor (1992) , Chair (2001 &#8211; 2006; 2008), and, on his retirement, Professor Emeritus
(2017). His research program spanned analytical, synthetic, and physical chemistry with an emphasis on sensors, membranes, and water
treatment processes.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Ben
Seaman has been a director since 2016. Mr. Seaman has been the CEO of Eartheasy.com Sustainable Living Ltd since 2007, growing the company
from $50K to over $25M in annual revenue. His company has contributed over $1M towards clean water projects in Kenya since 2013, and
has been recognized internationally by the Stockholm Challenge Award and the Outdoor Industry Inspiration Award in 2016. Prior to 2007,
he worked in sales and investor relations at Flexible Solutions. Mr. Seaman graduated from the University of Victoria with a Bachelor
of Science degree in 2004. He has significant experience in launching new products, marketing, distribution and e-commerce in both the
US and Canada. He&#8217;s a strong believer in the triple bottom line approach to business, giving consideration to social and environmental
issues in addition to financial performance.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">David
Fynn has been a director since 2016. Mr. David Fynn is a Canadian Chartered Professional Accountant and services individuals/companies
in many sectors including mining and commodities in his private practice. Mr. Fynn worked as a senior manager with KPMG in Canada and
Ernst &amp; Young in the United Kingdom and Saudi Arabia. Since 1996 he has been the principal of D.A. Fynn &amp; Associates Inc., an
accounting firm.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Directors
are elected annually and hold office until the next annual meeting of our stockholders and until their successors are elected and qualified.
All executive offices are chosen by the board of directors and serve at the board&#8217;s discretion.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 44; Value: 16 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->17<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">John
Bientjes, Thomas Fyles, Ben Seaman and David Fynn are independent directors as that term is defined in section 803 of the listing standards
of the NYSE American.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
Audit Committee, consisting of John Bientjes, Ben Seaman and David Fynn all of whom have strong financial backgrounds, facilitates and
maintains open communications with our board of directors, senior management and our independent auditors. Our Audit Committee also serves
as an independent and objective party which monitors our financial reporting process and internal control system. In addition, our Audit
Committee reviews and appraises the efforts of our independent auditors. Our Audit Committee meets periodically with management and our
independent auditors. John Bientjes and David Fynn meet the SEC&#8217;s definition of an audit committee financial expert. Each member
of the Audit Committee is &#8220;independent&#8221; as that term is defined in Section 803 of the listing standards of the NYSE American.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
Compensation Committee, consisting of John Bientjes, Ben Seaman and David Fynn, establishes salary, incentive and other forms of compensation
for our Chief Executive Officer and administers our Stock Option Plan. None of our officers participated in deliberations of the compensation
committee concerning executive officer compensation. During the year ended December 31, 2021 none of our executive officers served as
a member of the compensation committee or as a director of another entity, one of whose executive officers served on our compensation
committee or as one of our directors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have adopted a Code of Ethics that applies to our Chief Executive Officer, our Chief Financial Officer and our Principal Accounting Officer,
as well as our other senior management and financial staff. Interested persons may obtain a copy of our Code of Ethics from our website
at www.flexiblesolutions.com.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
believe our directors benefit us for the following reasons:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 80%; border-collapse: collapse; margin-right: auto">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 28%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Name</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 70%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Reason</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Daniel
    B. O&#8217;Brien</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Long
    standing relationship with us.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">John
    J. Bientjes</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Long
    standing relationship with us.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Robert
    Helina</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Corporate
    finance experience.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Dr.
    Thomas Fyles</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Scientific
    expertise.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Ben
    Seaman</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Younger
    generation businessman increases our awareness of internet sales and adds value to our audit and compensation committees</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">David
    Fynn</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Experienced
    accountant adds value to our audit and compensation committees</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 189pt; text-align: justify; text-indent: -153pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    11.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Executive
    Compensation.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Summary
Compensation Table</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table shows in summary form the compensation earned by (i) our Chief Executive Officer and (ii) by each other executive officer
who earned in excess of $100,000 during the two fiscal years ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid">Name and Principal Position</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Fiscal Year</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Salary (1)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Bonus (2)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Restricted Stock Awards (3)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Options Awards (4)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">All Other Annual Compensation (5)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Total</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 37%; text-align: left">Daniel B. O&#8217;Brien</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">2021</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 5%; text-align: right">747,920</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">&#8212;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">&#8212;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">&#8212;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">&#8212;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 5%; text-align: right">747,920</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">President, Chief Executive Financial and Accounting Officer</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2020</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">695,352</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">695,352</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    dollar value of base salary (cash and non-cash) earned.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 45; Value: 16 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->18<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    dollar value of bonus (cash and non-cash) earned.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(3)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
    the periods covered by the table, the value of the shares of restricted stock issued as compensation for services to the persons
    listed in the table.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(4)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    value of all stock options granted during the periods covered by the table.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(5)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">All
    other compensation received that we could not properly report in any other column of the table.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2012, the Company determined that Daniel B. O&#8217;Brien, the Company&#8217;s President and Chief Executive
Officer, was underpaid. Accordingly, the Company increased Mr. O&#8217;Brien&#8217;s annual salary to twice that which was paid to the
highest paid employee of the Company. Mr. O&#8217;Brien requested his salary be dropped by $100,000/year during 2019 and the Compensation
committee agreed. The Company expects that Mr. O&#8217;Brien&#8217;s salary for the year ending December 31, 2022 will again be twice
the annual salary less $100,000 paid to the Company&#8217;s highest paid employee, excluding Mr. O&#8217;Brien.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Non-Qualified
Stock Option Plan</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
August 2014 we adopted a Non-Qualified Stock Option Plan which authorizes the issuance of up to 1,500,000 shares of our common stock
to persons that exercise options granted pursuant to the Plan. Our employees, directors and officers, and consultants or advisors are
eligible to be granted options pursuant to the Non-Qualified Plan.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Plan is administered by our Compensation Committee. The Committee is vested with the authority to determine the number of shares issuable
upon the exercise of the options, the exercise price and expiration date of the options, and when, and upon what conditions options granted
under the Plan will vest or otherwise be subject to forfeiture and cancellation.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the fiscal year ended December 31, 2021 we issued 170,000 options pursuant to the Non-Qualified Plan (2020 &#8211; 172,000).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Summary</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table shows the weighted average exercise price of the outstanding options granted pursuant to our Non-Qualified Stock Option
Plan as of December 31, 2021, our most recently completed fiscal year.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; text-align: center">Plan Category</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Number of Securities<br /> to be Issued Upon<br /> Exercise of<br /> Outstanding Options,<br /> Warrants and Rights</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Weighted-Average<br /> Exercise Price of<br /> Outstanding Options,<br /> Warrants and Rights</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Number of Securities<br /> Remaining Available for<br /> Future Issuance Under<br /> Equity Compensation<br /> Plans (Excluding<br /> Securities Reflected<br /> in Column (a))</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="text-align: center">&#160;</td>
    <td style="text-align: center">&#160;</td><td style="text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)</span></td><td style="text-align: center">&#160;</td><td style="text-align: center">&#160;</td>
    <td style="text-align: center">&#160;</td><td style="text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)</span></td><td style="text-align: center">&#160;</td><td style="text-align: center">&#160;</td>
    <td style="text-align: center">&#160;</td><td style="text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(c)</span></td><td style="text-align: center">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; text-align: left">Non-Qualified Stock Option Plan</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 18%; text-align: right">789,500</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 20%; text-align: right">2.78</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 20%; text-align: right">62,000</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 45pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
Non-Qualified Stock Option Plan has been approved by our shareholders.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2021, options to purchase 789,500 shares of our common stock were outstanding under our Non-Qualified Stock Option Plan.
The exercise price of these options varies between $1.42 and $4.13 per share and the options expire at various dates between on December
31, 2021 and December 31, 2025.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">No
options were exercised by our executive officers during the fiscal year ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 46; Value: 16 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->19<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Director
Compensation</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
reimburse directors for any expenses incurred in attending board meetings. We also compensate directors $6,000 annually for each year
that they serve with an additional $4,000 paid to the head of the Audit Committee -</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
directors received the following compensation in 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid">Name</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Paid in Cash</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Stock Awards (1)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Option Awards (2)</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: left">John H. Bientjes</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">10,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#8212;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#8212;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Robert Helina</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">6,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Tom Fyles</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">6,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Ben Seaman</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">6,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">David Fynn</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">6,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#8212;</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    fair value of stock issued for services computed in accordance with ASC 718 on the date of grant.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    fair value of options granted computed in accordance with ASC 718 on the date of grant.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Daniel
B. O&#8217;Brien was not compensated for serving as a director during 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    12.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Security
    Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table shows the beneficial ownership of our common stock as of March 30, 2022 by (i) each stockholder who is known by us to
own beneficially more than five percent of our outstanding common stock, (ii) each of our officers and directors, and (iii) by all of
our executive officers and directors as a group.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Shares (1)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Percentage Ownership</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Daniel B. O&#8217;Brien</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">4,521,900</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">36.6</td><td style="width: 1%; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>6001 54 Ave.</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Taber, AB</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Canada T1G 1X4</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">John Bientjes</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">46081 Greenwood Dr.</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Chilliwack, BC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Canada V2R 4C9</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Robert Helina</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">40,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.3</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>6001 54 Ave.</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Taber, AB</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Canada T1G 1X4</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Dr. Thomas Fyles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">15,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.1</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Box 3065</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Victoria, BC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Canada V8W 3V6</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Ben Seaman</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Unit 605 5 E. Cordova St.</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Vancouver BC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Canada V6A 0A5</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">David Fynn</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">202-2526 Yale Court,</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Abbotsford, BC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Canada V2S 8G9</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">All officers and directors</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">as a group (6 persons)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">4,576,900</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">37.0</td><td style="padding-bottom: 2.5pt; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline; text-align: left">Other Principal Shareholders</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Comprehensive Financial Planning, Inc.</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,358,661</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">11.0</td><td style="text-align: left">%</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Includes
    shares which may be acquired on the exercise of the stock options, all of which were exercisable as of March 30, 2022, listed below.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 27pt; text-align: justify; text-indent: -27pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 47; Value: 16 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->20<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid">Name</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">No. of Options</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Exercise Price</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: center">Expiration Date</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 42%; text-align: left">Robert Helina</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">5,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">1.70</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center">December 31, 2022</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">3.46</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: center">December 31, 2023</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2.44</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: center">December 31, 2024</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2.44</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: center">December 31, 2025</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    13.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Certain
    Relationships and Related Transactions, Director Independence.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Not
applicable.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1in; text-indent: -1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    14.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Principal
    Accountant Fees and Services.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
August 2020, Morgan &amp; Company LLP merged with Smythe LLP. Both firms are referenced as Smythe LLP below.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smythe
LLP examined our financial statements for the years ended December 31, 2021 and 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Audit
Fees</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smythe
LLP was paid $114,800 in the fiscal year ended December 31, 2021 for professional services rendered in the audit of our annual financial
statements and for the reviews of the financial statements included in our quarterly reports on Form 10-Q during that fiscal year. Smythe
LLP was paid $88,636 for professional services rendered in the audit of our annual financial statements and for the reviews of the financial
statements included in our quarterly reports on Form 10-Q during fiscal 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Tax
Fees</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smythe
LLP has been retained to file our taxes for the fiscal years ended December 31, 2018 and onwards. No fees have been charged to date.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">All
Other Fees</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smythe
LLP was not paid any other fees for professional services during the fiscal years ended December 31, 2021 and 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 48; Value: 16 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->21<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Audit
Committee Pre-Approval Policies</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Rules
adopted by the SEC in order to implement requirements of the Sarbanes-Oxley Act of 2002 require public company audit committees to pre-approve
audit and non-audit services. Our Audit Committee has adopted a policy for the pre-approval of all audit, audit-related and tax services,
and permissible non-audit services provided by our independent auditors. The policy provides for an annual review of an audit plan and
budget for the upcoming annual financial statement audit, and entering into an engagement letter with the independent auditors covering
the scope of the audit and the fees to be paid. Our Audit Committee may also from time-to-time review and approve in advance other specific
audit, audit-related, tax or permissible non-audit services. In addition, our Audit Committee may from time-to-time give pre-approval
for audit services, audit-related services, tax services or other non-audit services by setting forth such pre-approved services on a
schedule containing a description of, budget for, and time period for such pre-approved services. The policy requires our Audit Committee
to be informed of each service and the policies do not include any delegation of our Audit Committee&#8217;s responsibilities to management.
Our Audit Committee may delegate pre-approval authority to one or more of its members. The member to whom such authority is delegated
will report any pre-approval decisions to our Audit Committee at its next scheduled meeting.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021 our Audit Committee approved all of the fees paid to Smythe LLP. Our Audit Committee has determined
that the rendering of all non-audit services by Smythe LLP is compatible with maintaining its independence.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Item
    15.</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Exhibits,
    Financial Statement Schedules.</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1in; text-indent: -1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Number</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Description</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="https://www.sec.gov/Archives/edgar/data/1069394/000102589400000057/0001025894-00-000057.txt" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Articles of Incorporation of the Registrant. (1)</span></a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.2</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="https://www.sec.gov/Archives/edgar/data/1069394/000102589400000057/0001025894-00-000057.txt" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Bylaws of the Registrant. (1)</span></a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">21.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="https://www.sec.gov/Archives/edgar/data/1069394/000120095203000085/fs_sbex21.txt" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Subsidiaries. (2)</span></a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">23.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="ex23-1.htm">Consent of Independent Accountants.</a></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">31.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="ex31-1.htm">Certification of Principal Executive Officer Pursuant to &#167;302 of the Sarbanes-Oxley Act of 2002.</a></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">31.2</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="ex31-2.htm">Certification of Principal Financial Officer Pursuant to &#167;302 of the Sarbanes-Oxley Act of 2002.</a></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">32.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="ex32-1.htm">Certification of Principal Executive and Financial Officer Pursuant to 18 U.S.C. &#167;1350 and &#167;906 of the Sarbanes-Oxley Act of 2002.</a></span></td></tr>

<tr style="vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">101.INS</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">&#160;&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">Inline
    XBRL Instance Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">101.SCH</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">&#160;&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">Inline
    XBRL Taxonomy Extension Schema Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">101.CAL</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">&#160;&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">Inline
    XBRL Taxonomy Extension Calculation Linkbase Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">101.DEF</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">&#160;&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">Inline
    XBRL Taxonomy Extension Definition Linkbase Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">101.LAB</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">&#160;&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">Inline
    XBRL Taxonomy Extension Label Linkbase Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">101.PRE</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">&#160;&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">Inline
    XBRL Taxonomy Extension Presentation Linkbase Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">104</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; color: #252423">Cover
    Page Interactive Data File (embedded within the Inline XBRL document)</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1in; text-align: justify; text-indent: -1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1in; text-align: justify; text-indent: -1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Previously
    filed as an exhibit to our Registration Statement on Form 10-SB filed with the Commission on February 22, 2000, and incorporated
    herein by reference.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Previously
    filed as an exhibit to our Registration Statement on Form SB-2 filed with the Commission on January 22, 2003, and incorporated herein
    by reference.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 49; Value: 16 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->22<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>SIGNATURES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
accordance with the requirements of Section 13 or 15(d) of the Securities Exchange Act of 1934, the registrant caused this report to
be signed on its behalf by the undersigned, thereunto duly authorized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">May
    12, 2022</span></td>
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>Flexible
    Solutions International, Inc.</b></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 50%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 5%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 45%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">By:</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    Daniel B. O&#8217;Brien</i></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Name:</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Daniel
    B. O&#8217;Brien</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Title:</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">President
    and Chief Executive Officer</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 3in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
accordance with the Exchange Act, this report has been signed below by the following persons on behalf of the registrant and in the capacities
and on the dates indicated:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 30%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Signature</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 40%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Title</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 26%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    Daniel B. O&#8217;Brien</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; padding-bottom: 1.5pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">President,
    Principal Executive Officer, Principal Financial and Accounting Officer and a Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; padding-bottom: 1.5pt; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">May
                                            12, 2022</p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Daniel
    B. O&#8217;Brien</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    John H. Bientjes</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">May
    12, 2022</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">John
    H. Bientjes</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    Robert T. Helina</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">May
    12, 2022</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Robert
    T. Helina</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    Thomas Fyles</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">May
                                            12, 2022</p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Thomas
    Fyles</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    Ben Seaman</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">May
    12, 2022</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Ben
    Seaman</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    David Fynn</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">May
    12, 2022</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">David
    Fynn</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 50; Options: Last -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->23<!-- Field: /Sequence --></td></tr></table></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>
</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>2
<FILENAME>ex23-1.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="text-align: center; font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><B>Exhibit
23.1</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>CONSENT
OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have issued our Independent Auditors&rsquo; Report, dated March 29, 2022, accompanying the consolidated financial statements for the
years ended December 31, 2021 and 2020 of Flexible Solutions International, Inc. We hereby consent to the incorporation by reference
of such report in the Company&rsquo;s registration statements on Form S-8 (File No. 333-191728).</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify">/s/ <FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smythe
LLP</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Smythe LLP</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chartered
Professional Accountants</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vancouver,
    Canada</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">May
    13,</FONT><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"> 2022</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"></FONT></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>3
<FILENAME>ex31-1.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><B>EXHIBIT
31.1</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">CERTIFICATIONS</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify; margin-top: 0pt; margin-bottom: 0pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I,
Daniel B. O&rsquo;Brien, certify that:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">1.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I
    have reviewed this annual report on Form 10-K/A of Flexible Solutions International, Inc.;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
    on my knowledge, this report, does not contain any untrue statement of a material fact or omit to state a material fact necessary
    to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to
    the period covered by the report;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
    on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material
    respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in
    this report;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">4.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    registrant&rsquo;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures
    (as defined in Exchange Act Rules 13a-15I and 15d-15e)) and internal control over financial reporting (as defined in Exchange
    Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Designed
    such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision,
    to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others
    within those entities, particularly during the period in which this report is being prepared;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Designed
    such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our
    supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements
    for external purposes in accordance with generally accepted accounting principles;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">c)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Evaluated
    the effectiveness of the registrant&rsquo;s disclosure controls and procedures and presented in this report our conclusions about
    the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation;
    and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">d)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Disclosed
    in this report any change in the registrant&rsquo;s internal control over financial reporting that occurred during the registrant&rsquo;s
    most recent fiscal quarter (the registrant&rsquo;s fourth fiscal quarter in the case of an annual report) that has materially affected,
    or is reasonably likely to materially affect, the registrant&rsquo;s internal control over financial reporting; and</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">5.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    registrant&rsquo;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over
    financial reporting, to the registrant&rsquo;s auditors and the audit committee of the registrant&rsquo;s board of directors (or
    persons performing the equivalent functions):</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">All
    significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are
    reasonably likely to adversely affect the registrant&rsquo;s ability to record, process, summarize and report financial information;
    and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Any
    fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&rsquo;s
    internal control over financial reporting.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date:
    May 12, 2022</FONT></TD>
    <TD STYLE="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Daniel B. O&rsquo;Brien</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Daniel
    B. O&rsquo;Brien</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Principal
    Executive Officer</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>4
<FILENAME>ex31-2.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><B>EXHIBIT
31.2</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">CERTIFICATIONS</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I,
Daniel B. O&rsquo;Brien, certify that:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">1.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I
    have reviewed this annual report on Form 10-K/A of Flexible Solutions International, Inc.;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
    on my knowledge, this report, does not contain any untrue statement of a material fact or omit to state a material fact necessary
    to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to
    the period covered by the report;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
    on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material
    respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in
    this report;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">4.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    registrant&rsquo;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures
    (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange
    Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Designed
    such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision,
    to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others
    within those entities, particularly during the period in which this report is being prepared;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Designed
    such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our
    supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements
    for external purposes in accordance with generally accepted accounting principles;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">c)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Evaluated
    the effectiveness of the registrant&rsquo;s disclosure controls and procedures and presented in this report our conclusions about
    the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation;
    and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">d)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Disclosed
    in this report any change in the registrant&rsquo;s internal control over financial reporting that occurred during the registrant&rsquo;s
    most recent fiscal quarter (the registrant&rsquo;s fourth fiscal quarter in the case of an annual report) that has materially affected,
    or is reasonably likely to materially affect, the registrant&rsquo;s internal control over financial reporting; and</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">5.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    registrant&rsquo;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over
    financial reporting, to the registrant&rsquo;s auditors and the audit committee of the registrant&rsquo;s board of directors (or
    persons performing the equivalent functions):</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">All
    significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are
    reasonably likely to adversely affect the registrant&rsquo;s ability to record, process, summarize and report financial information;
    and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Any
    fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&rsquo;s
    internal control over financial reporting.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date:
    May 12, 2022</FONT></TD>
    <TD STYLE="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Daniel B. O&rsquo;Brien</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Daniel
    B. O&rsquo;Brien</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Principal
    Financial Officer</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>5
<FILENAME>ex32-1.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBIT
32.1</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><B>&nbsp;</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><B>CertificatION
of Principal Executive Officer<BR>
Pursuant to 18 U.S.C. Section 1350,<BR>
as Adopted Pursuant to Section 906 of</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><B>the
Sarbanes-Oxley Act of 2002</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><B>&nbsp;</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Solely
for the purposes of complying with 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, I, the
undersigned Principal Executive and Financial Officer of Flexible Solutions International, Inc. (the &ldquo;Company&rdquo;), hereby certify
that, to the best of my knowledge, the Annual Report on Form 10-K/A of the Company for the year ended December 31, 2021 (the &ldquo;Report&rdquo;)
fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934 and that the information contained
in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date:
    May 12, 2022</FONT></TD>
    <TD STYLE="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Daniel B. O&rsquo;Brien</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Daniel
    B. O&rsquo;Brien</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Principal
    Executive and Principal Financial Officer</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>fsi-20211231.xsd
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" ?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.13b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
    <!-- Field: Doc-Info; Name: Misc; Value: 96Mps7xRiXgen8uDanwsWaqNGbP9z5Z8OekhvWBzbcmaby4ud7IKWSQ3+WsW4ZgN -->
<schema 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:dei="http://xbrl.sec.gov/dei/2021q4" xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31" xmlns:srt="http://fasb.org/srt/2021-01-31" xmlns:srt-types="http://fasb.org/srt-types/2021-01-31" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:FSI="http://flexiblesolutions.com/20211231" elementFormDefault="qualified" targetNamespace="http://flexiblesolutions.com/20211231">
    <annotation>
      <appinfo>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Cover" id="Cover">
	  <link:definition>00000001 - 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:roleType roleURI="http://flexiblesolutions.com/role/BalanceSheets" id="BalanceSheets">
	  <link:definition>00000002 - Statement - Consolidated Balance Sheets</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" id="BalanceSheetsParenthetical">
	  <link:definition>00000003 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" id="StatementsOfIncomeAndComprehensiveIncome">
	  <link:definition>00000004 - Statement - Consolidated Statements of Income and Comprehensive Income</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/StatementsOfCashFlows" id="StatementsOfCashFlows">
	  <link:definition>00000005 - Statement - Consolidated Statements of Cash Flows</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" id="StatementsOfStockholdersEquity">
	  <link:definition>00000006 - Statement - Consolidated Statements of Stockholders' Equity</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/BasisOfPresentation" id="BasisOfPresentation">
	  <link:definition>00000007 - Disclosure - BASIS OF PRESENTATION</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SignificantAccountingPolicies" id="SignificantAccountingPolicies">
	  <link:definition>00000008 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Leases" id="Leases">
	  <link:definition>00000009 - Disclosure - LEASES</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/AccountsReceivable" id="AccountsReceivable">
	  <link:definition>00000010 - Disclosure - ACCOUNTS RECEIVABLE</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Inventories" id="Inventories">
	  <link:definition>00000011 - Disclosure - INVENTORIES</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds" id="PropertyEquipmentAndLeaseholds">
	  <link:definition>00000012 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Patents" id="Patents">
	  <link:definition>00000013 - Disclosure - PATENTS</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" id="GoodwillAndIntangibleAssets">
	  <link:definition>00000014 - Disclosure - GOODWILL AND INTANGIBLE ASSETS</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/LongTermDeposits" id="LongTermDeposits">
	  <link:definition>00000015 - Disclosure - LONG TERM DEPOSITS</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Investments" id="Investments">
	  <link:definition>00000016 - Disclosure - INVESTMENTS</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Short-termLineOfCredit" id="Short-termLineOfCredit">
	  <link:definition>00000017 - Disclosure - SHORT-TERM LINE OF CREDIT</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/LongTermDebt" id="LongTermDebt">
	  <link:definition>00000018 - Disclosure - LONG TERM DEBT</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ConvertibleNotePayable" id="ConvertibleNotePayable">
	  <link:definition>00000019 - Disclosure - CONVERTIBLE NOTE PAYABLE</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/IncomeTaxes" id="IncomeTaxes">
	  <link:definition>00000020 - Disclosure - INCOME TAXES</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/IncomePerShare" id="IncomePerShare">
	  <link:definition>00000021 - Disclosure - INCOME PER SHARE</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/StockOptions" id="StockOptions">
	  <link:definition>00000022 - Disclosure - STOCK OPTIONS</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/CapitalStock" id="CapitalStock">
	  <link:definition>00000023 - Disclosure - CAPITAL STOCK</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Non-controllingInterests" id="Non-controllingInterests">
	  <link:definition>00000024 - Disclosure - NON-CONTROLLING INTERESTS</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" id="SegmentedSignificantCustomerInformationAndEconomicDependency">
	  <link:definition>00000025 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SubsequentEvents" id="SubsequentEvents">
	  <link:definition>00000026 - Disclosure - SUBSEQUENT EVENTS</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" id="SignificantAccountingPoliciesPolicies">
	  <link:definition>00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" id="SignificantAccountingPoliciesTables">
	  <link:definition>00000028 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/LeasesTables" id="LeasesTables">
	  <link:definition>00000029 - Disclosure - LEASES (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/AccountsReceivableTables" id="AccountsReceivableTables">
	  <link:definition>00000030 - Disclosure - ACCOUNTS RECEIVABLE (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/InventoriesTables" id="InventoriesTables">
	  <link:definition>00000031 - Disclosure - INVENTORIES (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables" id="PropertyEquipmentAndLeaseholdsTables">
	  <link:definition>00000032 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/PatentsTables" id="PatentsTables">
	  <link:definition>00000033 - Disclosure - PATENTS (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" id="GoodwillAndIntangibleAssetsTables">
	  <link:definition>00000034 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/LongTermDepositsTables" id="LongTermDepositsTables">
	  <link:definition>00000035 - Disclosure - LONG TERM DEPOSITS (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/InvestmentsTables" id="InvestmentsTables">
	  <link:definition>00000036 - Disclosure - INVESTMENTS (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/LongTermDebtTables" id="LongTermDebtTables">
	  <link:definition>00000037 - Disclosure - LONG TERM DEBT (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/IncomeTaxesTables" id="IncomeTaxesTables">
	  <link:definition>00000038 - Disclosure - INCOME TAXES (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/IncomePerShareTables" id="IncomePerShareTables">
	  <link:definition>00000039 - Disclosure - INCOME PER SHARE (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/StockOptionsTables" id="StockOptionsTables">
	  <link:definition>00000040 - Disclosure - STOCK OPTIONS (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsTables" id="Non-controllingInterestsTables">
	  <link:definition>00000041 - Disclosure - NON-CONTROLLING INTERESTS (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" id="SegmentedSignificantCustomerInformationAndEconomicDependencyTables">
	  <link:definition>00000042 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" id="BasisOfPresentationDetailsNarrative">
	  <link:definition>00000043 - Disclosure - BASIS OF PRESENTATION (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" id="ScheduleOfMethodOfDepreciationDetails">
	  <link:definition>00000044 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" id="SignificantAccountingPoliciesDetailsNarrative">
	  <link:definition>00000045 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" id="SummaryOfRight-of-useAssetAndLeaseLiabilityDetails">
	  <link:definition>00000046 - Disclosure - SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" id="ScheduleOfUndiscountedRentPaymentsDetails">
	  <link:definition>00000047 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/LeasesDetailsNarrative" id="LeasesDetailsNarrative">
	  <link:definition>00000048 - Disclosure - LEASES (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" id="ScheduleOfAccountsReceivableDetails">
	  <link:definition>00000049 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails" id="ScheduleOfInventoriesDetails">
	  <link:definition>00000050 - Disclosure - SCHEDULE OF INVENTORIES (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" id="ScheduleOfPropertyEquipmentAndLeaseholdsDetails">
	  <link:definition>00000051 - Disclosure -  SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative" id="PropertyEquipmentAndLeaseholdsDetailsNarrative">
	  <link:definition>00000052 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" id="ScheduleOfPatentsDetails">
	  <link:definition>00000053 - Disclosure - SCHEDULE OF PATENTS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails" id="ScheduleOfEstimatedAmortizationExpenseDetails">
	  <link:definition>00000054 - Disclosure - SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" id="ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails">
	  <link:definition>00000055 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/PatentsDetailsNarrative" id="PatentsDetailsNarrative">
	  <link:definition>00000056 - Disclosure - PATENTS (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" id="ScheduleOfEstimatedFutureAmortizationExpenseDetails">
	  <link:definition>00000057 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" id="GoodwillAndIntangibleAssetsDetailsNarrative">
	  <link:definition>00000058 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" id="ScheduleOfLongTermDepositsDetails">
	  <link:definition>00000059 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" id="ScheduleOfEquityMethodInvestmentDetails">
	  <link:definition>00000060 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" id="SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails">
	  <link:definition>00000061 - Disclosure - SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" id="ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails">
	  <link:definition>00000062 - Disclosure - SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" id="InvestmentsDetailsNarrative">
	  <link:definition>00000063 - Disclosure - INVESTMENTS (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" id="Short-termLineOfCreditDetailsNarrative">
	  <link:definition>00000064 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails" id="ScheduleOfInterestLoanRepaymentDetails">
	  <link:definition>00000065 - Disclosure - SCHEDULE OF INTEREST LOAN REPAYMENT (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" id="ScheduleOfLoanCovenantsDetails">
	  <link:definition>00000066 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" id="ScheduleOfOutstandingBalanceLoanDetails">
	  <link:definition>00000067 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" id="LongTermDebtDetailsNarrative">
	  <link:definition>00000068 - Disclosure - LONG TERM DEBT (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative" id="ConvertibleNotePayableDetailsNarrative">
	  <link:definition>00000069 - Disclosure - CONVERTIBLE NOTE PAYABLE (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" id="ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails">
	  <link:definition>00000070 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" id="ScheduleOfReconciliationOfIncomeTaxesDetails">
	  <link:definition>00000071 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" id="ScheduleOfDeferredTaxAssetsLiabilitiesDetails">
	  <link:definition>00000072 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" id="ScheduleOfNonOperatingLossCarryforwardsDetails">
	  <link:definition>00000073 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" id="IncomeTaxesDetailsNarrative">
	  <link:definition>00000074 - Disclosure - INCOME TAXES (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" id="ScheduleOfBasicAndDilutedLossPerShareDetails">
	  <link:definition>00000075 - Disclosure - SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" id="ScheduleOfAnti-dilutiveOptionsDetails">
	  <link:definition>00000076 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" id="IncomePerShareDetailsNarrative">
	  <link:definition>00000077 - Disclosure - INCOME PER SHARE (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" id="ScheduleOfStockOptionActivitiesDetails">
	  <link:definition>00000078 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" id="ScheduleOfStockOptionFairValueAssumptionsDetails">
	  <link:definition>00000079 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" id="StockOptionsDetailsNarrative">
	  <link:definition>00000080 - Disclosure - STOCK OPTIONS (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" id="CapitalStockDetailsNarrative">
	  <link:definition>00000081 - Disclosure - CAPITAL STOCK (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" id="ScheduleOfDistributionsDetails">
	  <link:definition>00000082 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" id="Non-controllingInterestsDetailsNarrative">
	  <link:definition>00000083 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" id="ScheduleOfReportableSegmentsDetails">
	  <link:definition>00000084 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" id="ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails">
	  <link:definition>00000085 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" id="ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails">
	  <link:definition>00000086 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" id="SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative">
	  <link:definition>00000087 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" id="SubsequentEventsDetailsNarrative">
	  <link:definition>00000088 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)</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="fsi-20211231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Presentation Links" />
	<link:linkbaseRef xlink:type="simple" xlink:href="fsi-20211231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Label Links" />
	<link:linkbaseRef xlink:type="simple" xlink:href="fsi-20211231_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Calculation Links" />
	<link:linkbaseRef xlink:type="simple" xlink:href="fsi-20211231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Definition Links" />
      </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.sec.gov/dei/2021q4" schemaLocation="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd" />
    <import namespace="http://fasb.org/us-gaap/2021-01-31" schemaLocation="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd" />
    <import namespace="http://fasb.org/us-types/2021-01-31" schemaLocation="https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.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/country/2021" schemaLocation="https://xbrl.sec.gov/country/2021/country-2021.xsd" />
    <import namespace="http://fasb.org/srt/2021-01-31" schemaLocation="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd" />
    <import namespace="http://fasb.org/srt-types/2021-01-31" schemaLocation="https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd" />
    <element id="FSI_CapitalInExcessOfParValueMember" name="CapitalInExcessOfParValueMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EnpInvestmentsLlcAndEnpMendotaMember" name="EnpInvestmentsLlcAndEnpMendotaMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EnpnvestmentsLlcMember" name="EnpnvestmentsLlcMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EnpPeruInvestmentsLlcMember" name="EnpPeruInvestmentsLlcMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EnpInvestmentsLLCMember" name="EnpInvestmentsLLCMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_UnrelatedPartyMember" name="UnrelatedPartyMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EnpRealtyLLCMember" name="EnpRealtyLLCMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ThreePrimaryCustomersMember" name="ThreePrimaryCustomersMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_BoatMember" name="BoatMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_BuildingAndImprovementsMember" name="BuildingAndImprovementsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TrailerMember" name="TrailerMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_CustomerRelationshipsENPInvestmentsMember" name="CustomerRelationshipsENPInvestmentsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_SoftwareENPInvestmentsMember" name="SoftwareENPInvestmentsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_CADMember" name="CADMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EnPInvestmentsCorporationLLCMember" name="EnPInvestmentsCorporationLLCMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_AppliedHoldingCorpMember" name="AppliedHoldingCorpMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TrioOpportunityCorpMember" name="TrioOpportunityCorpMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_FloridaBasedLLCMember" name="FloridaBasedLLCMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_LygosIncMember" name="LygosIncMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_NewAgreementMember" name="NewAgreementMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_HarrisBankMember" name="HarrisBankMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_MidlandStatesBankMember" name="MidlandStatesBankMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_NanoChemSolutionIncMember" name="NanoChemSolutionIncMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TermLoanMember" name="TermLoanMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_NanoChemSolutionsIncMember" name="NanoChemSolutionsIncMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_MidlandBankMember" name="MidlandBankMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_FordMotorCreditCompanyMember" name="FordMotorCreditCompanyMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_PaycheckProtectionProgramMember" name="PaycheckProtectionProgramMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_StockYardsBankTrustMember" name="StockYardsBankTrustMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_PromissoryNoteOneWithMidlandBankMember" name="PromissoryNoteOneWithMidlandBankMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_PromissoryNoteWithMidlandBankMember" name="PromissoryNoteWithMidlandBankMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_HarrisBankOneMember" name="HarrisBankOneMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_PaycheckProtectionProgramOneMember" name="PaycheckProtectionProgramOneMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_MidlandStatesBankOneMember" name="MidlandStatesBankOneMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_MidlandStatesBankTwoMember" name="MidlandStatesBankTwoMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandTwentyNineTaxYearMember" name="TwoThousandTwentyNineTaxYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandThirtyTaxYearMember" name="TwoThousandThirtyTaxYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandThirtyOneTaxYearMember" name="TwoThousandThirtyOneTaxYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandThirtySevenTaxYearMember" name="TwoThousandThirtySevenTaxYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandThirtyEightTaxYearMember" name="TwoThousandThirtyEightTaxYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandThirtyNineTaxYearMember" name="TwoThousandThirtyNineTaxYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandFortyTaxYearMember" name="TwoThousandFortyTaxYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandFortyOneTaxYearMember" name="TwoThousandFortyOneTaxYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ConsultantsMember" name="ConsultantsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EmployeesMember" name="EmployeesMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EmployeesStockOptionMember" name="EmployeesStockOptionMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ConsultantsStockOptionsMember" name="ConsultantsStockOptionsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EnpInvestmentMember" name="EnpInvestmentMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_OwnershipInterestPurchaseAgreementMember" name="OwnershipInterestPurchaseAgreementMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EWCPMember" name="EWCPMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_BCPAMember" name="BCPAMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_UnitedStatesandAbroadMember" name="UnitedStatesandAbroadMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ThreeCustomersMember" name="ThreeCustomersMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EmployeeMember" name="EmployeeMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_UponExerciseofStockOptionsMember" name="UponExerciseofStockOptionsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_FiniteLivedPatentGross" name="FiniteLivedPatentGross" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_Consulting" name="Consulting" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_InterestExpenses" name="InterestExpenses" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_InvestorRelationsAndTransferAgentFee" name="InvestorRelationsAndTransferAgentFee" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_Commissions" name="Commissions" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ShippingCost" name="ShippingCost" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_GainLossOnSaleOfLand" name="GainLossOnSaleOfLand" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_PppLoanForgiveness" name="PppLoanForgiveness" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_GainOnAcquisition" name="GainOnAcquisition" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_LeaseRightOfUseFinancing" name="LeaseRightOfUseFinancing" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_GainLossOnInvestment" name="GainLossOnInvestment" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_BadDebtExpense" name="BadDebtExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_PaycheckProtectionProgramLoanForgiveness" name="PaycheckProtectionProgramLoanForgiveness" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities" name="InventoryAdditionsInAccountsPayableAndAccruedLiabilities" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DisclosureLeasesAbstract" name="DisclosureLeasesAbstract" abstract="true" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DisclosureLongTermDepositsAbstract" name="DisclosureLongTermDepositsAbstract" abstract="true" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_LongTermDepositsTextBlock" name="LongTermDepositsTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_StockIssuedInExchangeForServicesPolicyTextBlock" name="StockIssuedInExchangeForServicesPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ScheduleOfMethodOfDepreciationTableTextBlock" name="ScheduleOfMethodOfDepreciationTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock" name="SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock" name="ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ScheduleOfLongTermDepositsTableTextBlock" name="ScheduleOfLongTermDepositsTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" name="ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ScheduleOfLoanCovenantsTableTextBlock" name="ScheduleOfLoanCovenantsTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock" name="ScheduleOfNonOperatingLossCarryforwardsTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ScheduleOfDistributionsTableTextBlock" name="ScheduleOfDistributionsTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DepreciationMethodUsedAndAnnualRate" name="DepreciationMethodUsedAndAnnualRate" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ConcentrationRiskThresholdPercentage" name="ConcentrationRiskThresholdPercentage" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_OperatingLeaseAssetsAddition" name="OperatingLeaseAssetsAddition" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_OperatingLeasesAssetsTermination" name="OperatingLeasesAssetsTermination" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_OperatingLeasesLiabilityAddition" name="OperatingLeasesLiabilityAddition" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_OperatingLeasesLiabilityTermination" name="OperatingLeasesLiabilityTermination" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_LeaseInterestExpense" name="LeaseInterestExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_GainOnInvestments" name="GainOnInvestments" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_IncreaseInCurrencyConversion" name="IncreaseInCurrencyConversion" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EquityMethodInvestmentReturnOfEquity" name="EquityMethodInvestmentReturnOfEquity" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_InvestmentEliminatedUponConsolidation" name="InvestmentEliminatedUponConsolidation" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_AdditionalPayment" name="AdditionalPayment" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_RealizedInvestmentGainsLossesNet" name="RealizedInvestmentGainsLossesNet" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_GainOnAcquisitionOfEnpRealty" name="GainOnAcquisitionOfEnpRealty" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EligiblePercentageOfDomesticAccountsReceivable" name="EligiblePercentageOfDomesticAccountsReceivable" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_PercentageOfForeignAccountsReceivableOfInventory" name="PercentageOfForeignAccountsReceivableOfInventory" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_LoanGuaranteedRate" name="LoanGuaranteedRate" nillable="true" xbrli:periodType="instant" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ProceedsFromLoanAcquiredWithAcquisition" name="ProceedsFromLoanAcquiredWithAcquisition" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_PaymentOfMonthlyInstallmentsInterestRate" name="PaymentOfMonthlyInstallmentsInterestRate" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ExpectedIncomeTaxRecovery" name="ExpectedIncomeTaxRecovery" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment" name="DeferredTaxAssetsPropertyPlantsAndEquipment" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DeferredTaxAssetsLiabilitiesGross" name="DeferredTaxAssetsLiabilitiesGross" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DeferredTaxAssetNet" name="DeferredTaxAssetNet" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne" name="DeferredTaxAssetsPropertyPlantsAndEquipmentOne" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DeferredTaxAssetNotRecognized" name="DeferredTaxAssetNotRecognized" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DeferredTaxAssetLiabilitiesNet" name="DeferredTaxAssetLiabilitiesNet" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" name="SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" nillable="true" xbrli:periodType="instant" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" name="SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" name="SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" name="SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" name="SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" nillable="true" xbrli:periodType="instant" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_AdditionalExpensesDueToOptionsGranted" name="AdditionalExpensesDueToOptionsGranted" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_Segmentassets" name="Segmentassets" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_StockOptionExercisePercent" name="StockOptionExercisePercent" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_EnpInvestmentsLlcAndEnpRealtyllcMember" name="EnpInvestmentsLlcAndEnpRealtyllcMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_RightofUseAssetMember" name="RightofUseAssetMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_PromissoryNoteWithMidlandStatesBankMember" name="PromissoryNoteWithMidlandStatesBankMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_HarrisBankTwoMember" name="HarrisBankTwoMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>7
<FILENAME>fsi-20211231_cal.xml
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.13b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<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:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Cover" xlink:href="fsi-20211231.xsd#Cover" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheets" xlink:href="fsi-20211231.xsd#BalanceSheets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" xlink:href="fsi-20211231.xsd#BalanceSheetsParenthetical" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" xlink:href="fsi-20211231.xsd#StatementsOfIncomeAndComprehensiveIncome" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfCashFlows" xlink:href="fsi-20211231.xsd#StatementsOfCashFlows" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" xlink:href="fsi-20211231.xsd#StatementsOfStockholdersEquity" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentation" xlink:href="fsi-20211231.xsd#BasisOfPresentation" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPolicies" xlink:href="fsi-20211231.xsd#SignificantAccountingPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Leases" xlink:href="fsi-20211231.xsd#Leases" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivable" xlink:href="fsi-20211231.xsd#AccountsReceivable" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Inventories" xlink:href="fsi-20211231.xsd#Inventories" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds" xlink:href="fsi-20211231.xsd#PropertyEquipmentAndLeaseholds" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Patents" xlink:href="fsi-20211231.xsd#Patents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" xlink:href="fsi-20211231.xsd#GoodwillAndIntangibleAssets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDeposits" xlink:href="fsi-20211231.xsd#LongTermDeposits" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Investments" xlink:href="fsi-20211231.xsd#Investments" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCredit" xlink:href="fsi-20211231.xsd#Short-termLineOfCredit" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebt" xlink:href="fsi-20211231.xsd#LongTermDebt" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ConvertibleNotePayable" xlink:href="fsi-20211231.xsd#ConvertibleNotePayable" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxes" xlink:href="fsi-20211231.xsd#IncomeTaxes" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShare" xlink:href="fsi-20211231.xsd#IncomePerShare" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptions" xlink:href="fsi-20211231.xsd#StockOptions" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStock" xlink:href="fsi-20211231.xsd#CapitalStock" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:href="fsi-20211231.xsd#Non-controllingInterests" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:href="fsi-20211231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEvents" xlink:href="fsi-20211231.xsd#SubsequentEvents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:href="fsi-20211231.xsd#SignificantAccountingPoliciesPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:href="fsi-20211231.xsd#SignificantAccountingPoliciesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesTables" xlink:href="fsi-20211231.xsd#LeasesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:href="fsi-20211231.xsd#AccountsReceivableTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InventoriesTables" xlink:href="fsi-20211231.xsd#InventoriesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables" xlink:href="fsi-20211231.xsd#PropertyEquipmentAndLeaseholdsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsTables" xlink:href="fsi-20211231.xsd#PatentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:href="fsi-20211231.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:href="fsi-20211231.xsd#LongTermDepositsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsTables" xlink:href="fsi-20211231.xsd#InvestmentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:href="fsi-20211231.xsd#LongTermDebtTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:href="fsi-20211231.xsd#IncomeTaxesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:href="fsi-20211231.xsd#IncomePerShareTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsTables" xlink:href="fsi-20211231.xsd#StockOptionsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:href="fsi-20211231.xsd#Non-controllingInterestsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:href="fsi-20211231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:href="fsi-20211231.xsd#BasisOfPresentationDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:href="fsi-20211231.xsd#ScheduleOfMethodOfDepreciationDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:href="fsi-20211231.xsd#SignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:href="fsi-20211231.xsd#SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfUndiscountedRentPaymentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:href="fsi-20211231.xsd#LeasesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:href="fsi-20211231.xsd#ScheduleOfAccountsReceivableDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfInventoriesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative" xlink:href="fsi-20211231.xsd#PropertyEquipmentAndLeaseholdsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfPatentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails" xlink:href="fsi-20211231.xsd#ScheduleOfEstimatedAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:href="fsi-20211231.xsd#PatentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:href="fsi-20211231.xsd#ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:href="fsi-20211231.xsd#GoodwillAndIntangibleAssetsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfLongTermDepositsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:href="fsi-20211231.xsd#ScheduleOfEquityMethodInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:href="fsi-20211231.xsd#SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" xlink:href="fsi-20211231.xsd#ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:href="fsi-20211231.xsd#InvestmentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:href="fsi-20211231.xsd#Short-termLineOfCreditDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails" xlink:href="fsi-20211231.xsd#ScheduleOfInterestLoanRepaymentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfLoanCovenantsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:href="fsi-20211231.xsd#ScheduleOfOutstandingBalanceLoanDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:href="fsi-20211231.xsd#LongTermDebtDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative" xlink:href="fsi-20211231.xsd#ConvertibleNotePayableDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:href="fsi-20211231.xsd#ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:href="fsi-20211231.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:href="fsi-20211231.xsd#ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfAnti-dilutiveOptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:href="fsi-20211231.xsd#IncomePerShareDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfStockOptionActivitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:href="fsi-20211231.xsd#StockOptionsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:href="fsi-20211231.xsd#CapitalStockDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfDistributionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:href="fsi-20211231.xsd#Non-controllingInterestsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfReportableSegmentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:href="fsi-20211231.xsd#ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:href="fsi-20211231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:href="fsi-20211231.xsd#SubsequentEventsDetailsNarrative" xlink:type="simple" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Cover" xlink:title="00000001 - Document - Cover" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BalanceSheets" xlink:title="00000002 - Statement - Consolidated Balance Sheets">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Cash" xlink:label="loc_us-gaapCash" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapCash" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepositsAssetsCurrent" xlink:label="loc_us-gaapDepositsAssetsCurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapDepositsAssetsCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="loc_us-gaapPrepaidExpenseCurrent" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapPrepaidExpenseCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaapAssets" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapAssetsCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FiniteLivedPatentGross" xlink:label="loc_FSIFiniteLivedPatentGross" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_FSIFiniteLivedPatentGross" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepositsAssetsNoncurrent" xlink:label="loc_us-gaapDepositsAssetsNoncurrent" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapDepositsAssetsNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="loc_us-gaapEquityMethodInvestments" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapEquityMethodInvestments" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:calculationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaapDeferredIncomeTaxAssetsNet" />
      <link:calculationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapDeferredIncomeTaxAssetsNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaapAccountsPayableCurrent" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapAccountsPayableCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccruedLiabilitiesCurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapAccruedLiabilitiesCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaapDeferredRevenueCurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapDeferredRevenueCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxesPayableCurrent" xlink:label="loc_us-gaapTaxesPayableCurrent" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapTaxesPayableCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="loc_us-gaapLinesOfCreditCurrent" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapLinesOfCreditCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityCurrent" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapOperatingLeaseLiabilityCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaapLongTermDebtCurrent" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapLongTermDebtCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaapLiabilities" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapLiabilitiesCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityNoncurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapOperatingLeaseLiabilityNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapLongTermDebtNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaapCommonStockValue" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapCommonStockValue" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="loc_us-gaapAdditionalPaidInCapital" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapAdditionalPaidInCapital" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaapRetainedEarningsAccumulatedDeficit" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapStockholdersEquity" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="loc_us-gaapMinorityInterest" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapMinorityInterest" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquity" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaapLiabilities" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" xlink:title="00000003 - Statement - Consolidated Balance Sheets (Parenthetical)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" xlink:title="00000004 - Statement - Consolidated Statements of Income and Comprehensive Income">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaapGrossProfit" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapGrossProfit" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaapCostOfGoodsAndServicesSold" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapGrossProfit" xlink:to="loc_us-gaapCostOfGoodsAndServicesSold" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalariesAndWages" xlink:label="loc_us-gaapSalariesAndWages" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapSalariesAndWages" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OfficersCompensation" xlink:label="loc_us-gaapOfficersCompensation" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapOfficersCompensation" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralInsuranceExpense" xlink:label="loc_us-gaapGeneralInsuranceExpense" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapGeneralInsuranceExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseExpense" xlink:label="loc_us-gaapOperatingLeaseExpense" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapOperatingLeaseExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_Consulting" xlink:label="loc_FSIConsulting" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_FSIConsulting" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfessionalFees" xlink:label="loc_us-gaapProfessionalFees" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapProfessionalFees" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherGeneralExpense" xlink:label="loc_us-gaapOtherGeneralExpense" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapOtherGeneralExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InterestExpenses" xlink:label="loc_FSIInterestExpenses" />
      <link:calculationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_FSIInterestExpenses" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaapSellingAndMarketingExpense" />
      <link:calculationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapSellingAndMarketingExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense" />
      <link:calculationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapResearchAndDevelopmentExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TravelAndEntertainmentExpense" xlink:label="loc_us-gaapTravelAndEntertainmentExpense" />
      <link:calculationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapTravelAndEntertainmentExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InvestorRelationsAndTransferAgentFee" xlink:label="loc_FSIInvestorRelationsAndTransferAgentFee" />
      <link:calculationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_FSIInvestorRelationsAndTransferAgentFee" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_Commissions" xlink:label="loc_FSICommissions" />
      <link:calculationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_FSICommissions" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommunicationsAndInformationTechnology" xlink:label="loc_us-gaapCommunicationsAndInformationTechnology" />
      <link:calculationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapCommunicationsAndInformationTechnology" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" />
      <link:calculationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UtilitiesOperatingExpense" xlink:label="loc_us-gaapUtilitiesOperatingExpense" />
      <link:calculationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapUtilitiesOperatingExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ShippingCost" xlink:label="loc_FSIShippingCost" />
      <link:calculationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_FSIShippingCost" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaapProvisionForDoubtfulAccounts" />
      <link:calculationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapProvisionForDoubtfulAccounts" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingIncomeLoss" xlink:to="loc_us-gaapGrossProfit" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingIncomeLoss" xlink:to="loc_us-gaapOperatingExpenses" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapOperatingIncomeLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainLossOnSaleOfLand" xlink:label="loc_FSIGainLossOnSaleOfLand" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_FSIGainLossOnSaleOfLand" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PppLoanForgiveness" xlink:label="loc_FSIPppLoanForgiveness" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_FSIPppLoanForgiveness" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnInvestments" xlink:label="loc_us-gaapGainLossOnInvestments" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapGainLossOnInvestments" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainOnAcquisition" xlink:label="loc_FSIGainOnAcquisition" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_FSIGainOnAcquisition" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentIncomeInterest" xlink:label="loc_us-gaapInvestmentIncomeInterest" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapInvestmentIncomeInterest" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapProfitLoss" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapProfitLoss" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentIncomeTaxExpenseBenefit" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapProfitLoss" xlink:to="loc_us-gaapCurrentIncomeTaxExpenseBenefit" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_us-gaapProfitLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapNetIncomeLossAttributableToNoncontrollingInterest" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_us-gaapNetIncomeLossAttributableToNoncontrollingInterest" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapProfitLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTax" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:type="arc" weight="-1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StatementsOfCashFlows" xlink:title="00000005 - Statement - Consolidated Statements of Cash Flows">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapProfitLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaapShareBasedCompensation" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapShareBasedCompensation" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaapDepreciationAndAmortization" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapDepreciationAndAmortization" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LeaseRightOfUseFinancing" xlink:label="loc_FSILeaseRightOfUseFinancing" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_FSILeaseRightOfUseFinancing" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="loc_us-gaapFinanceLeaseRightOfUseAssetAmortization" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapFinanceLeaseRightOfUseAssetAmortization" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainLossOnInvestment" xlink:label="loc_FSIGainLossOnInvestment" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_FSIGainLossOnInvestment" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BadDebtExpense" xlink:label="loc_FSIBadDebtExpense" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_FSIBadDebtExpense" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:calculationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" />
      <link:calculationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainLossOnSaleOfLand" xlink:label="loc_FSIGainLossOnSaleOfLand" />
      <link:calculationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_FSIGainLossOnSaleOfLand" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramLoanForgiveness" xlink:label="loc_FSIPaycheckProtectionProgramLoanForgiveness" />
      <link:calculationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_FSIPaycheckProtectionProgramLoanForgiveness" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsReceivable" />
      <link:calculationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsReceivable" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaapIncreaseDecreaseInInventories" />
      <link:calculationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInInventories" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="loc_us-gaapIncreaseDecreaseInPrepaidExpense" />
      <link:calculationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInPrepaidExpense" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
      <link:calculationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" />
      <link:calculationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" />
      <link:calculationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromOtherDeposits" xlink:label="loc_us-gaapProceedsFromOtherDeposits" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapProceedsFromOtherDeposits" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaapPaymentsToAcquireInvestments" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquireInvestments" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:label="loc_us-gaapProceedsFromSaleOfEquityMethodInvestments" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapProceedsFromSaleOfEquityMethodInvestments" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment" xlink:label="loc_us-gaapProceedsFromSaleOfOtherPropertyPlantAndEquipment" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapProceedsFromSaleOfOtherPropertyPlantAndEquipment" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:label="loc_us-gaapProceedsFromRepaymentsOfLinesOfCredit" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapProceedsFromRepaymentsOfLinesOfCredit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="loc_us-gaapRepaymentsOfLongTermDebt" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapRepaymentsOfLongTermDebt" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="loc_us-gaapProceedsFromIssuanceOfLongTermDebt" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapProceedsFromIssuanceOfLongTermDebt" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfFinancingCosts" xlink:label="loc_us-gaapPaymentsOfFinancingCosts" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapPaymentsOfFinancingCosts" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfDebt" xlink:label="loc_us-gaapRepaymentsOfDebt" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapRepaymentsOfDebt" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="loc_us-gaapPaymentsToMinorityShareholders" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapPaymentsToMinorityShareholders" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaapProceedsFromIssuanceOfCommonStock" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapProceedsFromIssuanceOfCommonStock" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:type="arc" weight="1" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" xlink:title="00000006 - Statement - Consolidated Statements of Stockholders&apos; Equity" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BasisOfPresentation" xlink:title="00000007 - Disclosure - BASIS OF PRESENTATION" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPolicies" xlink:title="00000008 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Leases" xlink:title="00000009 - Disclosure - LEASES" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/AccountsReceivable" xlink:title="00000010 - Disclosure - ACCOUNTS RECEIVABLE" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Inventories" xlink:title="00000011 - Disclosure - INVENTORIES" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds" xlink:title="00000012 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Patents" xlink:title="00000013 - Disclosure - PATENTS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" xlink:title="00000014 - Disclosure - GOODWILL AND INTANGIBLE ASSETS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDeposits" xlink:title="00000015 - Disclosure - LONG TERM DEPOSITS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Investments" xlink:title="00000016 - Disclosure - INVESTMENTS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Short-termLineOfCredit" xlink:title="00000017 - Disclosure - SHORT-TERM LINE OF CREDIT" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebt" xlink:title="00000018 - Disclosure - LONG TERM DEBT" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ConvertibleNotePayable" xlink:title="00000019 - Disclosure - CONVERTIBLE NOTE PAYABLE" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxes" xlink:title="00000020 - Disclosure - INCOME TAXES" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShare" xlink:title="00000021 - Disclosure - INCOME PER SHARE" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptions" xlink:title="00000022 - Disclosure - STOCK OPTIONS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStock" xlink:title="00000023 - Disclosure - CAPITAL STOCK" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:title="00000024 - Disclosure - NON-CONTROLLING INTERESTS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:title="00000025 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SubsequentEvents" xlink:title="00000026 - Disclosure - SUBSEQUENT EVENTS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:title="00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:title="00000028 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesTables" xlink:title="00000029 - Disclosure - LEASES (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:title="00000030 - Disclosure - ACCOUNTS RECEIVABLE (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InventoriesTables" xlink:title="00000031 - Disclosure - INVENTORIES (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables" xlink:title="00000032 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PatentsTables" xlink:title="00000033 - Disclosure - PATENTS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:title="00000034 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:title="00000035 - Disclosure - LONG TERM DEPOSITS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InvestmentsTables" xlink:title="00000036 - Disclosure - INVESTMENTS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:title="00000037 - Disclosure - LONG TERM DEBT (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:title="00000038 - Disclosure - INCOME TAXES (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:title="00000039 - Disclosure - INCOME PER SHARE (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsTables" xlink:title="00000040 - Disclosure - STOCK OPTIONS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:title="00000041 - Disclosure - NON-CONTROLLING INTERESTS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:title="00000042 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:title="00000043 - Disclosure - BASIS OF PRESENTATION (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:title="00000044 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:title="00000045 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:title="00000046 - Disclosure - SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" xlink:title="00000047 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:title="00000048 - Disclosure - LEASES (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:title="00000049 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsAndNotesReceivableNet" xlink:label="loc_us-gaapAccountsAndNotesReceivableNet" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableGross" xlink:label="loc_us-gaapAccountsReceivableGross" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAccountsAndNotesReceivableNet" xlink:to="loc_us-gaapAccountsReceivableGross" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAccountsAndNotesReceivableNet" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:type="arc" weight="-1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails" xlink:title="00000050 - Disclosure - SCHEDULE OF INVENTORIES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryFinishedGoods" xlink:label="loc_us-gaapInventoryFinishedGoods" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryNet" xlink:to="loc_us-gaapInventoryFinishedGoods" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryWorkInProcess" xlink:label="loc_us-gaapInventoryWorkInProcess" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryNet" xlink:to="loc_us-gaapInventoryWorkInProcess" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryRawMaterialsAndSupplies" xlink:label="loc_us-gaapInventoryRawMaterialsAndSupplies" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryNet" xlink:to="loc_us-gaapInventoryRawMaterialsAndSupplies" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:title="00000051 - Disclosure -  SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative" xlink:title="00000052 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:title="00000053 - Disclosure - SCHEDULE OF PATENTS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails" xlink:title="00000054 - Disclosure - SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:title="00000055 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:title="00000056 - Disclosure - PATENTS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:title="00000057 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:title="00000058 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:title="00000059 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:title="00000060 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:title="00000061 - Disclosure - SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" xlink:title="00000062 - Disclosure - SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:title="00000063 - Disclosure - INVESTMENTS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:title="00000064 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails" xlink:title="00000065 - Disclosure - SCHEDULE OF INTEREST LOAN REPAYMENT (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:title="00000066 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:title="00000067 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:title="00000068 - Disclosure - LONG TERM DEBT (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative" xlink:title="00000069 - Disclosure - CONVERTIBLE NOTE PAYABLE (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:title="00000070 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentIncomeTaxExpenseBenefit" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentFederalTaxExpenseBenefit" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCurrentIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapCurrentFederalTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentStateAndLocalTaxExpenseBenefit" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCurrentIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapCurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentForeignTaxExpenseBenefit" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCurrentIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapCurrentForeignTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredFederalIncomeTaxExpenseBenefit" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapDeferredFederalIncomeTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredStateAndLocalIncomeTaxExpenseBenefit" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapDeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredForeignIncomeTaxExpenseBenefit" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapDeferredForeignIncomeTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapCurrentIncomeTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:title="00000071 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:title="00000072 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:title="00000073 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:title="00000074 - Disclosure - INCOME TAXES (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:title="00000075 - Disclosure - SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" xlink:title="00000076 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:title="00000077 - Disclosure - INCOME PER SHARE (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:title="00000078 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:title="00000079 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:title="00000080 - Disclosure - STOCK OPTIONS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:title="00000081 - Disclosure - CAPITAL STOCK (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:title="00000082 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:title="00000083 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:title="00000084 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:title="00000085 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" xlink:title="00000086 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:title="00000087 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:title="00000088 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>8
<FILENAME>fsi-20211231_def.xml
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.13b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<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" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Cover" xlink:href="fsi-20211231.xsd#Cover" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheets" xlink:href="fsi-20211231.xsd#BalanceSheets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" xlink:href="fsi-20211231.xsd#BalanceSheetsParenthetical" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" xlink:href="fsi-20211231.xsd#StatementsOfIncomeAndComprehensiveIncome" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfCashFlows" xlink:href="fsi-20211231.xsd#StatementsOfCashFlows" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" xlink:href="fsi-20211231.xsd#StatementsOfStockholdersEquity" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentation" xlink:href="fsi-20211231.xsd#BasisOfPresentation" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPolicies" xlink:href="fsi-20211231.xsd#SignificantAccountingPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Leases" xlink:href="fsi-20211231.xsd#Leases" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivable" xlink:href="fsi-20211231.xsd#AccountsReceivable" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Inventories" xlink:href="fsi-20211231.xsd#Inventories" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds" xlink:href="fsi-20211231.xsd#PropertyEquipmentAndLeaseholds" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Patents" xlink:href="fsi-20211231.xsd#Patents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" xlink:href="fsi-20211231.xsd#GoodwillAndIntangibleAssets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDeposits" xlink:href="fsi-20211231.xsd#LongTermDeposits" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Investments" xlink:href="fsi-20211231.xsd#Investments" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCredit" xlink:href="fsi-20211231.xsd#Short-termLineOfCredit" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebt" xlink:href="fsi-20211231.xsd#LongTermDebt" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ConvertibleNotePayable" xlink:href="fsi-20211231.xsd#ConvertibleNotePayable" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxes" xlink:href="fsi-20211231.xsd#IncomeTaxes" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShare" xlink:href="fsi-20211231.xsd#IncomePerShare" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptions" xlink:href="fsi-20211231.xsd#StockOptions" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStock" xlink:href="fsi-20211231.xsd#CapitalStock" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:href="fsi-20211231.xsd#Non-controllingInterests" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:href="fsi-20211231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEvents" xlink:href="fsi-20211231.xsd#SubsequentEvents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:href="fsi-20211231.xsd#SignificantAccountingPoliciesPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:href="fsi-20211231.xsd#SignificantAccountingPoliciesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesTables" xlink:href="fsi-20211231.xsd#LeasesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:href="fsi-20211231.xsd#AccountsReceivableTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InventoriesTables" xlink:href="fsi-20211231.xsd#InventoriesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables" xlink:href="fsi-20211231.xsd#PropertyEquipmentAndLeaseholdsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsTables" xlink:href="fsi-20211231.xsd#PatentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:href="fsi-20211231.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:href="fsi-20211231.xsd#LongTermDepositsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsTables" xlink:href="fsi-20211231.xsd#InvestmentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:href="fsi-20211231.xsd#LongTermDebtTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:href="fsi-20211231.xsd#IncomeTaxesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:href="fsi-20211231.xsd#IncomePerShareTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsTables" xlink:href="fsi-20211231.xsd#StockOptionsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:href="fsi-20211231.xsd#Non-controllingInterestsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:href="fsi-20211231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:href="fsi-20211231.xsd#BasisOfPresentationDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:href="fsi-20211231.xsd#ScheduleOfMethodOfDepreciationDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:href="fsi-20211231.xsd#SignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:href="fsi-20211231.xsd#SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfUndiscountedRentPaymentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:href="fsi-20211231.xsd#LeasesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:href="fsi-20211231.xsd#ScheduleOfAccountsReceivableDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfInventoriesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative" xlink:href="fsi-20211231.xsd#PropertyEquipmentAndLeaseholdsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfPatentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails" xlink:href="fsi-20211231.xsd#ScheduleOfEstimatedAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:href="fsi-20211231.xsd#PatentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:href="fsi-20211231.xsd#ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:href="fsi-20211231.xsd#GoodwillAndIntangibleAssetsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfLongTermDepositsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:href="fsi-20211231.xsd#ScheduleOfEquityMethodInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:href="fsi-20211231.xsd#SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" xlink:href="fsi-20211231.xsd#ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:href="fsi-20211231.xsd#InvestmentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:href="fsi-20211231.xsd#Short-termLineOfCreditDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails" xlink:href="fsi-20211231.xsd#ScheduleOfInterestLoanRepaymentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfLoanCovenantsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:href="fsi-20211231.xsd#ScheduleOfOutstandingBalanceLoanDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:href="fsi-20211231.xsd#LongTermDebtDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative" xlink:href="fsi-20211231.xsd#ConvertibleNotePayableDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:href="fsi-20211231.xsd#ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:href="fsi-20211231.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:href="fsi-20211231.xsd#ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfAnti-dilutiveOptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:href="fsi-20211231.xsd#IncomePerShareDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfStockOptionActivitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:href="fsi-20211231.xsd#StockOptionsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:href="fsi-20211231.xsd#CapitalStockDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfDistributionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:href="fsi-20211231.xsd#Non-controllingInterestsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfReportableSegmentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:href="fsi-20211231.xsd#ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:href="fsi-20211231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:href="fsi-20211231.xsd#SubsequentEventsDetailsNarrative" 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://flexiblesolutions.com/role/Cover" xlink:title="00000001 - Document - Cover" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BalanceSheets" xlink:title="00000002 - Statement - Consolidated Balance Sheets" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" xlink:title="00000003 - Statement - Consolidated Balance Sheets (Parenthetical)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" xlink:title="00000004 - Statement - Consolidated Statements of Income and Comprehensive Income" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StatementsOfCashFlows" xlink:title="00000005 - Statement - Consolidated Statements of Cash Flows" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" xlink:title="00000006 - Statement - Consolidated Statements of Stockholders&apos; Equity">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapCommonStockMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_CapitalInExcessOfParValueMember" xlink:label="loc_FSICapitalInExcessOfParValueMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_FSICapitalInExcessOfParValueMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaapRetainedEarningsMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapRetainedEarningsMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ParentMember" xlink:label="loc_us-gaapParentMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapParentMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="loc_us-gaapNoncontrollingInterestMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapNoncontrollingInterestMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_80" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaapSharesOutstanding_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesOutstanding_80" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaapOtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_80" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapProfitLoss_80" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueNewIssues_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueNewIssues_80" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues_80" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:label="loc_us-gaapMinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapMinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_80" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaapAdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_80" xlink:type="arc" order="8" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BasisOfPresentation" xlink:title="00000007 - Disclosure - BASIS OF PRESENTATION" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPolicies" xlink:title="00000008 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Leases" xlink:title="00000009 - Disclosure - LEASES" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/AccountsReceivable" xlink:title="00000010 - Disclosure - ACCOUNTS RECEIVABLE" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Inventories" xlink:title="00000011 - Disclosure - INVENTORIES" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds" xlink:title="00000012 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Patents" xlink:title="00000013 - Disclosure - PATENTS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" xlink:title="00000014 - Disclosure - GOODWILL AND INTANGIBLE ASSETS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDeposits" xlink:title="00000015 - Disclosure - LONG TERM DEPOSITS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Investments" xlink:title="00000016 - Disclosure - INVESTMENTS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Short-termLineOfCredit" xlink:title="00000017 - Disclosure - SHORT-TERM LINE OF CREDIT" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebt" xlink:title="00000018 - Disclosure - LONG TERM DEBT" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ConvertibleNotePayable" xlink:title="00000019 - Disclosure - CONVERTIBLE NOTE PAYABLE" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxes" xlink:title="00000020 - Disclosure - INCOME TAXES" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShare" xlink:title="00000021 - Disclosure - INCOME PER SHARE" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptions" xlink:title="00000022 - Disclosure - STOCK OPTIONS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStock" xlink:title="00000023 - Disclosure - CAPITAL STOCK" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:title="00000024 - Disclosure - NON-CONTROLLING INTERESTS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:title="00000025 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SubsequentEvents" xlink:title="00000026 - Disclosure - SUBSEQUENT EVENTS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:title="00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:title="00000028 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesTables" xlink:title="00000029 - Disclosure - LEASES (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:title="00000030 - Disclosure - ACCOUNTS RECEIVABLE (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InventoriesTables" xlink:title="00000031 - Disclosure - INVENTORIES (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables" xlink:title="00000032 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PatentsTables" xlink:title="00000033 - Disclosure - PATENTS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:title="00000034 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:title="00000035 - Disclosure - LONG TERM DEPOSITS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InvestmentsTables" xlink:title="00000036 - Disclosure - INVESTMENTS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpRealtyLLCMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIFloridaBasedLLCMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSILygosIncMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsTextBlock" xlink:label="loc_us-gaapEquityMethodInvestmentsTextBlock_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentsTextBlock_60" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnInvestmentsTextBlock" xlink:label="loc_us-gaapGainLossOnInvestmentsTextBlock_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapGainLossOnInvestmentsTextBlock_60" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" xlink:label="loc_FSIScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_60" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:title="00000037 - Disclosure - LONG TERM DEBT (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtLineItems" xlink:label="loc_us-gaapShortTermDebtLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTable" xlink:label="loc_us-gaapScheduleOfShortTermDebtTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapScheduleOfShortTermDebtTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapDebtInstrumentAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteOneWithMidlandBankMember" xlink:label="loc_FSIPromissoryNoteOneWithMidlandBankMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSIPromissoryNoteOneWithMidlandBankMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteWithMidlandBankMember" xlink:label="loc_FSIPromissoryNoteWithMidlandBankMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSIPromissoryNoteWithMidlandBankMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="loc_us-gaapScheduleOfMaturitiesOfLongTermDebtTableTextBlock_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapScheduleOfMaturitiesOfLongTermDebtTableTextBlock_40" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfLoanCovenantsTableTextBlock" xlink:label="loc_FSIScheduleOfLoanCovenantsTableTextBlock_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_FSIScheduleOfLoanCovenantsTableTextBlock_40" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="loc_us-gaapScheduleOfDebtInstrumentsTextBlock_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapScheduleOfDebtInstrumentsTextBlock_40" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:title="00000038 - Disclosure - INCOME TAXES (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:title="00000039 - Disclosure - INCOME PER SHARE (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsTables" xlink:title="00000040 - Disclosure - STOCK OPTIONS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:title="00000041 - Disclosure - NON-CONTROLLING INTERESTS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:title="00000042 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:title="00000043 - Disclosure - BASIS OF PRESENTATION (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_srtOwnershipAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLlcAndEnpMendotaMember" xlink:label="loc_FSIEnpInvestmentsLlcAndEnpMendotaMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpInvestmentsLlcAndEnpMendotaMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpnvestmentsLlcMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpInvestmentsLLCMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpRealtyLLCMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_UnrelatedPartyMember" xlink:label="loc_FSIUnrelatedPartyMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIUnrelatedPartyMember_30" xlink:type="arc" order="32" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_40" xlink:type="arc" order="42" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_50" xlink:type="arc" order="52" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" xlink:label="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_70" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1_70" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:title="00000044 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="loc_us-gaapComputerEquipmentMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapComputerEquipmentMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaapFurnitureAndFixturesMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapFurnitureAndFixturesMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaapMachineryAndEquipmentMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapMachineryAndEquipmentMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapOfficeEquipmentMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BoatMember" xlink:label="loc_FSIBoatMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBoatMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BuildingAndImprovementsMember" xlink:label="loc_FSIBuildingAndImprovementsMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBuildingAndImprovementsMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TrailerMember" xlink:label="loc_FSITrailerMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSITrailerMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AutomobilesMember" xlink:label="loc_us-gaapAutomobilesMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapAutomobilesMember_70" xlink:type="arc" order="71" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PatentsMember" xlink:label="loc_us-gaapPatentsMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapPatentsMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TechnologyEquipmentMember" xlink:label="loc_us-gaapTechnologyEquipmentMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapTechnologyEquipmentMember_90" xlink:type="arc" order="91" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_CustomerRelationshipsENPInvestmentsMember" xlink:label="loc_FSICustomerRelationshipsENPInvestmentsMember_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSICustomerRelationshipsENPInvestmentsMember_110" xlink:type="arc" order="111" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SoftwareENPInvestmentsMember" xlink:label="loc_FSISoftwareENPInvestmentsMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSISoftwareENPInvestmentsMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DepreciationMethodUsedAndAnnualRate" xlink:label="loc_FSIDepreciationMethodUsedAndAnnualRate_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_FSIDepreciationMethodUsedAndAnnualRate_140" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:title="00000045 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProductInformationLineItems" xlink:label="loc_us-gaapProductInformationLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="loc_us-gaapScheduleOfProductInformationTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapScheduleOfProductInformationTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_srtProductOrServiceAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShippingAndHandlingMember" xlink:label="loc_us-gaapShippingAndHandlingMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_us-gaapShippingAndHandlingMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaapConcentrationRiskByTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapConcentrationRiskByTypeAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaapConcentrationRiskTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapConcentrationRiskByTypeAxis" xlink:to="loc_us-gaapConcentrationRiskTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaapConcentrationRiskTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapConcentrationRiskByTypeAxis" xlink:to="loc_us-gaapConcentrationRiskTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ThreePrimaryCustomersMember" xlink:label="loc_FSIThreePrimaryCustomersMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskTypeDomain" xlink:to="loc_FSIThreePrimaryCustomersMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaapConcentrationRiskByBenchmarkAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerMember" xlink:label="loc_us-gaapRevenueFromContractWithCustomerMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapRevenueFromContractWithCustomerMember_30" xlink:type="arc" order="32" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaapAccountsReceivableMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapAccountsReceivableMember_70" xlink:type="arc" order="72" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_120" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaapCostOfGoodsAndServicesSold_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapCostOfGoodsAndServicesSold_120" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ConcentrationRiskThresholdPercentage" xlink:label="loc_FSIConcentrationRiskThresholdPercentage_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_FSIConcentrationRiskThresholdPercentage_120" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAccountsReceivableNet_120" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities" xlink:label="loc_us-gaapEquityMethodInvestmentDescriptionOfPrincipalActivities_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentDescriptionOfPrincipalActivities_120" xlink:type="arc" order="4" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:title="00000046 - Disclosure - SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" xlink:title="00000047 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:title="00000048 - Disclosure - LEASES (Details Narrative)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:title="00000049 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails" xlink:title="00000050 - Disclosure - SCHEDULE OF INVENTORIES (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:title="00000051 - Disclosure -  SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BuildingAndImprovementsMember" xlink:label="loc_FSIBuildingAndImprovementsMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBuildingAndImprovementsMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AutomobilesMember" xlink:label="loc_us-gaapAutomobilesMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapAutomobilesMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="loc_us-gaapComputerEquipmentMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapComputerEquipmentMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaapFurnitureAndFixturesMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapFurnitureAndFixturesMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapOfficeEquipmentMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaapMachineryAndEquipmentMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapMachineryAndEquipmentMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TrailerMember" xlink:label="loc_FSITrailerMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSITrailerMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BoatMember" xlink:label="loc_FSIBoatMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBoatMember_70" xlink:type="arc" order="71" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaapDevelopedTechnologyRightsMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapDevelopedTechnologyRightsMember_90" xlink:type="arc" order="91" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LandMember" xlink:label="loc_us-gaapLandMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLandMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross_250" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_250" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet_250" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative" xlink:title="00000052 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquipmentMember" xlink:label="loc_us-gaapEquipmentMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapEquipmentMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaapDepreciation_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapDepreciation_80" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AreaOfLand" xlink:label="loc_us-gaapAreaOfLand_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAreaOfLand_80" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:label="loc_us-gaapProceedsFromSaleOfMachineryAndEquipment_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapProceedsFromSaleOfMachineryAndEquipment_80" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross_80" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainOnInvestments" xlink:label="loc_FSIGainOnInvestments_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_FSIGainOnInvestments_80" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_80" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment_80" xlink:type="arc" order="6" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:title="00000053 - Disclosure - SCHEDULE OF PATENTS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails" xlink:title="00000054 - Disclosure - SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:title="00000055 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnPInvestmentsCorporationLLCMember" xlink:label="loc_FSIEnPInvestmentsCorporationLLCMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnPInvestmentsCorporationLLCMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapGoodwill_80" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaapIndefiniteLivedIntangibleAssetsExcludingGoodwill_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapIndefiniteLivedIntangibleAssetsExcludingGoodwill_80" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet_80" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaapAmortizationOfIntangibleAssets_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAmortizationOfIntangibleAssets_80" xlink:type="arc" order="3" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:title="00000056 - Disclosure - PATENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapAwardTypeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_CADMember" xlink:label="loc_FSICADMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_FSICADMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_IncreaseInCurrencyConversion" xlink:label="loc_FSIIncreaseInCurrencyConversion_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSIIncreaseInCurrencyConversion_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaapAmortizationOfIntangibleAssets_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapAmortizationOfIntangibleAssets_50" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:title="00000057 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:label="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareTable" xlink:label="loc_us-gaapImpairmentEffectsOnEarningsPerShareTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapImpairmentEffectsOnEarningsPerShareTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="loc_us-gaapFairValueByAssetClassAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareTable" xlink:to="loc_us-gaapFairValueByAssetClassAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFairValueByAssetClassAxis" xlink:to="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFairValueByAssetClassAxis" xlink:to="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMember" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_20" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_20" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree_20" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFour_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFour_20" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFive_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFive_20" xlink:type="arc" order="4" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:title="00000058 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_srtOwnershipAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpnvestmentsLlcMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaapCustomerRelationshipsMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapCustomerRelationshipsMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:label="loc_us-gaapComputerSoftwareIntangibleAssetMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapComputerSoftwareIntangibleAssetMember_10" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife_30" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:title="00000059 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:title="00000060 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpRealtyLLCMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIFloridaBasedLLCMember_90" xlink:type="arc" order="91" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSILygosIncMember_140" xlink:type="arc" order="141" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="loc_us-gaapEquityMethodInvestments_200" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestments_200" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EquityMethodInvestmentReturnOfEquity" xlink:label="loc_FSIEquityMethodInvestmentReturnOfEquity_200" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIEquityMethodInvestmentReturnOfEquity_200" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:label="loc_us-gaapEquityMethodInvestmentRealizedGainLossOnDisposal_200" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentRealizedGainLossOnDisposal_200" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InvestmentEliminatedUponConsolidation" xlink:label="loc_FSIInvestmentEliminatedUponConsolidation_200" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIInvestmentEliminatedUponConsolidation_200" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_AdditionalPayment" xlink:label="loc_FSIAdditionalPayment_200" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIAdditionalPayment_200" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AcquisitionCosts" xlink:label="loc_us-gaapAcquisitionCosts_200" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAcquisitionCosts_200" xlink:type="arc" order="6" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:title="00000061 - Disclosure - SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIFloridaBasedLLCMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainsLossesOnSalesOfInvestmentRealEstate" xlink:label="loc_us-gaapGainsLossesOnSalesOfInvestmentRealEstate_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapGainsLossesOnSalesOfInvestmentRealEstate_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_RealizedInvestmentGainsLossesNet" xlink:label="loc_FSIRealizedInvestmentGainsLossesNet_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIRealizedInvestmentGainsLossesNet_50" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RealizedInvestmentGainsLosses" xlink:label="loc_us-gaapRealizedInvestmentGainsLosses_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRealizedInvestmentGainsLosses_50" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" xlink:title="00000062 - Disclosure - SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:title="00000063 - Disclosure - INVESTMENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpRealtyLLCMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_AppliedHoldingCorpMember" xlink:label="loc_FSIAppliedHoldingCorpMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIAppliedHoldingCorpMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TrioOpportunityCorpMember" xlink:label="loc_FSITrioOpportunityCorpMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSITrioOpportunityCorpMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIFloridaBasedLLCMember_90" xlink:type="arc" order="91" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSILygosIncMember_150" xlink:type="arc" order="151" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtOwnershipAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpRealtyLLCMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaapStatementClassOfStockAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementClassOfStockAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaapClassOfStockDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementClassOfStockAxis" xlink:to="loc_us-gaapClassOfStockDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaapClassOfStockDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementClassOfStockAxis" xlink:to="loc_us-gaapClassOfStockDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassBMember" xlink:label="loc_us-gaapCommonClassBMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapClassOfStockDomain" xlink:to="loc_us-gaapCommonClassBMember_70" xlink:type="arc" order="71" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_170" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromContributionsFromAffiliates" xlink:label="loc_us-gaapProceedsFromContributionsFromAffiliates_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapProceedsFromContributionsFromAffiliates_170" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByNoncontrollingOwners_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByNoncontrollingOwners_170" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" xlink:label="loc_us-gaapInvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapInvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_170" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentExpirationOrDueDateYear_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentExpirationOrDueDateYear_170" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentTerm" xlink:label="loc_us-gaapDebtInstrumentTerm_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtInstrumentTerm_170" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues_170" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaapSharePrice_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharePrice_170" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedCashNoncurrent" xlink:label="loc_us-gaapRestrictedCashNoncurrent_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRestrictedCashNoncurrent_170" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration" xlink:label="loc_us-gaapAssetAcquisitionConsiderationTransferredContingentConsideration_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAssetAcquisitionConsiderationTransferredContingentConsideration_170" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax_170" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAccountsReceivableNet_170" xlink:type="arc" order="11" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:title="00000064 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="loc_us-gaapLineOfCreditFacilityLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="loc_us-gaapLineOfCreditFacilityTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaapTypeOfArrangementAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapTypeOfArrangementAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapTypeOfArrangementAxis" xlink:to="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaapArrangementsAndNonarrangementTransactionsMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapTypeOfArrangementAxis" xlink:to="loc_us-gaapArrangementsAndNonarrangementTransactionsMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NewAgreementMember" xlink:label="loc_FSINewAgreementMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" xlink:to="loc_FSINewAgreementMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="loc_us-gaapLineOfCreditFacilityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapLineOfCreditFacilityAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaapLineOfCreditFacilityLenderDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapLineOfCreditFacilityAxis" xlink:to="loc_us-gaapLineOfCreditFacilityLenderDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaapLineOfCreditFacilityLenderDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapLineOfCreditFacilityAxis" xlink:to="loc_us-gaapLineOfCreditFacilityLenderDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLenderDomain" xlink:to="loc_FSIHarrisBankMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankMember" xlink:label="loc_FSIMidlandStatesBankMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankMember_20" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIHarrisBankMember_120" xlink:type="arc" order="122" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaapSubsequentEventTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapSubsequentEventTypeAxis" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaapSubsequentEventTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapSubsequentEventTypeAxis" xlink:to="loc_us-gaapSubsequentEventTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaapSubsequentEventTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapSubsequentEventTypeAxis" xlink:to="loc_us-gaapSubsequentEventTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaapSubsequentEventMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSubsequentEventTypeDomain" xlink:to="loc_us-gaapSubsequentEventMember_70" xlink:type="arc" order="73" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NanoChemSolutionIncMember" xlink:label="loc_FSINanoChemSolutionIncMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSINanoChemSolutionIncMember_80" xlink:type="arc" order="82" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapDebtInstrumentAxis" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TermLoanMember" xlink:label="loc_FSITermLoanMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSITermLoanMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity_160" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EligiblePercentageOfDomesticAccountsReceivable" xlink:label="loc_FSIEligiblePercentageOfDomesticAccountsReceivable_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_FSIEligiblePercentageOfDomesticAccountsReceivable_160" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PercentageOfForeignAccountsReceivableOfInventory" xlink:label="loc_FSIPercentageOfForeignAccountsReceivableOfInventory_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_FSIPercentageOfForeignAccountsReceivableOfInventory_160" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:label="loc_us-gaapLineOfCreditFacilityInterestRateDuringPeriod_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityInterestRateDuringPeriod_160" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd" xlink:label="loc_us-gaapLineOfCreditFacilityInterestRateAtPeriodEnd_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityInterestRateAtPeriodEnd_160" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCredit" xlink:label="loc_us-gaapLineOfCredit_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCredit_160" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LoanGuaranteedRate" xlink:label="loc_FSILoanGuaranteedRate_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_FSILoanGuaranteedRate_160" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="loc_us-gaapLinesOfCreditCurrent_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLinesOfCreditCurrent_160" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="loc_us-gaapShortTermBorrowings_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapShortTermBorrowings_160" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_160" xlink:type="arc" order="9" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails" xlink:title="00000065 - Disclosure - SCHEDULE OF INTEREST LOAN REPAYMENT (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtLineItems" xlink:label="loc_us-gaapShortTermDebtLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTable" xlink:label="loc_us-gaapScheduleOfShortTermDebtTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapScheduleOfShortTermDebtTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapDebtInstrumentAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteOneWithMidlandBankMember" xlink:label="loc_FSIPromissoryNoteOneWithMidlandBankMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSIPromissoryNoteOneWithMidlandBankMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteWithMidlandBankMember" xlink:label="loc_FSIPromissoryNoteWithMidlandBankMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSIPromissoryNoteWithMidlandBankMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_30" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_30" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_30" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_30" xlink:type="arc" order="3" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:title="00000066 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:title="00000067 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIHarrisBankMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankOneMember" xlink:label="loc_FSIHarrisBankOneMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIHarrisBankOneMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankMember" xlink:label="loc_FSIMidlandStatesBankMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FordMotorCreditCompanyMember" xlink:label="loc_FSIFordMotorCreditCompanyMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIFordMotorCreditCompanyMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramMember" xlink:label="loc_FSIPaycheckProtectionProgramMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIPaycheckProtectionProgramMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramOneMember" xlink:label="loc_FSIPaycheckProtectionProgramOneMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIPaycheckProtectionProgramOneMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankOneMember" xlink:label="loc_FSIMidlandStatesBankOneMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankOneMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankTwoMember" xlink:label="loc_FSIMidlandStatesBankTwoMember_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankTwoMember_140" xlink:type="arc" order="141" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockYardsBankTrustMember" xlink:label="loc_FSIStockYardsBankTrustMember_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustMember_160" xlink:type="arc" order="161" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaapLongTermDebt_210" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLongTermDebt_210" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaapLongTermDebtCurrent_210" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLongTermDebtCurrent_210" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent_210" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLongTermDebtNoncurrent_210" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:title="00000068 - Disclosure - LONG TERM DEBT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtLineItems" xlink:label="loc_us-gaapShortTermDebtLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTable" xlink:label="loc_us-gaapScheduleOfShortTermDebtTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapScheduleOfShortTermDebtTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapDebtInstrumentAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TermLoanMember" xlink:label="loc_FSITermLoanMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSITermLoanMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIHarrisBankMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandBankMember" xlink:label="loc_FSIMidlandBankMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandBankMember_70" xlink:type="arc" order="71" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FordMotorCreditCompanyMember" xlink:label="loc_FSIFordMotorCreditCompanyMember_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIFordMotorCreditCompanyMember_130" xlink:type="arc" order="131" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramMember" xlink:label="loc_FSIPaycheckProtectionProgramMember_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIPaycheckProtectionProgramMember_150" xlink:type="arc" order="151" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockYardsBankTrustMember" xlink:label="loc_FSIStockYardsBankTrustMember_340" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustMember_340" xlink:type="arc" order="341" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NanoChemSolutionsIncMember" xlink:label="loc_FSINanoChemSolutionsIncMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSINanoChemSolutionsIncMember_0" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpInvestmentsLLCMember_20" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NanoChemSolutionIncMember" xlink:label="loc_FSINanoChemSolutionIncMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSINanoChemSolutionIncMember_40" xlink:type="arc" order="42" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember_70" xlink:type="arc" order="72" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember_340" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpRealtyLLCMember_340" xlink:type="arc" order="342" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="loc_us-gaapVariableRateAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapVariableRateAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaapVariableRateDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapVariableRateAxis" xlink:to="loc_us-gaapVariableRateDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaapVariableRateDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapVariableRateAxis" xlink:to="loc_us-gaapVariableRateDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrimeRateMember" xlink:label="loc_us-gaapPrimeRateMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapVariableRateDomain" xlink:to="loc_us-gaapPrimeRateMember_50" xlink:type="arc" order="52" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" xlink:label="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain" xlink:label="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" xlink:to="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain" xlink:label="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" xlink:to="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_FederalHomeLoanBankOfCincinnatiMember" xlink:label="loc_srtFederalHomeLoanBankOfCincinnatiMember_370" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain" xlink:to="loc_srtFederalHomeLoanBankOfCincinnatiMember_370" xlink:type="arc" order="371" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaapDebtInstrumentFaceAmount_440" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentFaceAmount_440" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentTerm" xlink:label="loc_us-gaapDebtInstrumentTerm_440" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentTerm_440" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaymentOfMonthlyInstallmentsInterestRate" xlink:label="loc_FSIPaymentOfMonthlyInstallmentsInterestRate_440" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_FSIPaymentOfMonthlyInstallmentsInterestRate_440" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="loc_us-gaapDebtInstrumentPeriodicPayment_440" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentPeriodicPayment_440" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_440" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_440" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestExpenseDebt" xlink:label="loc_us-gaapInterestExpenseDebt_440" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapInterestExpenseDebt_440" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_440" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_440" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDefaultLongtermDebtAmount" xlink:label="loc_us-gaapDebtDefaultLongtermDebtAmount_440" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtDefaultLongtermDebtAmount_440" xlink:type="arc" order="7" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative" xlink:title="00000069 - Disclosure - CONVERTIBLE NOTE PAYABLE (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpInvestmentsLLCMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="loc_srtConsolidatedEntitiesAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtConsolidatedEntitiesAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="loc_srtConsolidatedEntitiesDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtConsolidatedEntitiesAxis" xlink:to="loc_srtConsolidatedEntitiesDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="loc_srtConsolidatedEntitiesDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtConsolidatedEntitiesAxis" xlink:to="loc_srtConsolidatedEntitiesDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ParentCompanyMember" xlink:label="loc_srtParentCompanyMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtConsolidatedEntitiesDomain" xlink:to="loc_srtParentCompanyMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConvertibleNotesPayable" xlink:label="loc_us-gaapConvertibleNotesPayable_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapConvertibleNotesPayable_60" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear_60" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentRate" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentRate_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentRate_60" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentSharesIssued1" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentSharesIssued1_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentSharesIssued1_60" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentAmount1_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentAmount1_60" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentIncreaseAccruedInterest" xlink:label="loc_us-gaapDebtInstrumentIncreaseAccruedInterest_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtInstrumentIncreaseAccruedInterest_60" xlink:type="arc" order="5" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:title="00000070 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:title="00000071 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:title="00000072 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaapOperatingLossCarryforwardsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwardsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InternalRevenueServiceIRSMember" xlink:label="loc_us-gaapInternalRevenueServiceIRSMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapInternalRevenueServiceIRSMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="loc_us-gaapDeferredTaxAssetsOperatingLossCarryforwards_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsOperatingLossCarryforwards_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:label="loc_us-gaapDeferredTaxAssetsGoodwillAndIntangibleAssets_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsGoodwillAndIntangibleAssets_50" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetsPropertyPlantsAndEquipment" xlink:label="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipment_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipment_50" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsDerivativeInstruments" xlink:label="loc_us-gaapDeferredTaxAssetsDerivativeInstruments_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsDerivativeInstruments_50" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetsLiabilitiesGross" xlink:label="loc_FSIDeferredTaxAssetsLiabilitiesGross_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetsLiabilitiesGross_50" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaapDeferredTaxAssetsValuationAllowance_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsValuationAllowance_50" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetNet" xlink:label="loc_FSIDeferredTaxAssetNet_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetNet_50" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsInvestments" xlink:label="loc_us-gaapDeferredTaxAssetsInvestments_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsInvestments_50" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne" xlink:label="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipmentOne_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipmentOne_50" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetNotRecognized" xlink:label="loc_FSIDeferredTaxAssetNotRecognized_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetNotRecognized_50" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetLiabilitiesNet" xlink:label="loc_FSIDeferredTaxAssetLiabilitiesNet_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetLiabilitiesNet_50" xlink:type="arc" order="10" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:title="00000073 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaapOperatingLossCarryforwardsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwardsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxPeriodAxis" xlink:label="loc_us-gaapTaxPeriodAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapTaxPeriodAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaapTaxPeriodDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapTaxPeriodAxis" xlink:to="loc_us-gaapTaxPeriodDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaapTaxPeriodDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapTaxPeriodAxis" xlink:to="loc_us-gaapTaxPeriodDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandTwentyNineTaxYearMember" xlink:label="loc_FSITwoThousandTwentyNineTaxYearMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandTwentyNineTaxYearMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyTaxYearMember" xlink:label="loc_FSITwoThousandThirtyTaxYearMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyTaxYearMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyOneTaxYearMember" xlink:label="loc_FSITwoThousandThirtyOneTaxYearMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyOneTaxYearMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtySevenTaxYearMember" xlink:label="loc_FSITwoThousandThirtySevenTaxYearMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtySevenTaxYearMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyEightTaxYearMember" xlink:label="loc_FSITwoThousandThirtyEightTaxYearMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyEightTaxYearMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyNineTaxYearMember" xlink:label="loc_FSITwoThousandThirtyNineTaxYearMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyNineTaxYearMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandFortyTaxYearMember" xlink:label="loc_FSITwoThousandFortyTaxYearMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandFortyTaxYearMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandFortyOneTaxYearMember" xlink:label="loc_FSITwoThousandFortyOneTaxYearMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandFortyOneTaxYearMember_70" xlink:type="arc" order="71" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaapOperatingLossCarryforwards_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwards_100" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:title="00000074 - Disclosure - INCOME TAXES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaapOperatingLossCarryforwardsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwardsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaapOperatingLossCarryforwards_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwards_30" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:title="00000075 - Disclosure - SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" xlink:title="00000076 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:title="00000077 - Disclosure - INCOME PER SHARE (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaapOperatingLossCarryforwardsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwardsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaapPreferredStockSharesIssued_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapPreferredStockSharesIssued_30" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaapPreferredStockSharesOutstanding_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapPreferredStockSharesOutstanding_30" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:title="00000078 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_160" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_160" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_160" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_160" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_160" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_160" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_160" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_160" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_160" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_160" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_160" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_160" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_160" xlink:type="arc" order="15" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_160" xlink:type="arc" order="16" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="loc_us-gaapSharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapSharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_160" xlink:type="arc" order="17" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:title="00000079 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:title="00000080 - Disclosure - STOCK OPTIONS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:label="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:label="loc_us-gaapScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srtTitleOfIndividualAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:to="loc_srtTitleOfIndividualAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ConsultantsMember" xlink:label="loc_FSIConsultantsMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_FSIConsultantsMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EmployeesMember" xlink:label="loc_FSIEmployeesMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_FSIEmployeesMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_100" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_100" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_100" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_100" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockOptionPlanExpense" xlink:label="loc_us-gaapStockOptionPlanExpense_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapStockOptionPlanExpense_100" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_AdditionalExpensesDueToOptionsGranted" xlink:label="loc_FSIAdditionalExpensesDueToOptionsGranted_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_FSIAdditionalExpensesDueToOptionsGranted_100" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_100" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_100" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_100" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_100" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_100" xlink:type="arc" order="10" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:title="00000081 - Disclosure - CAPITAL STOCK (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OffsettingAssetsLineItems" xlink:label="loc_us-gaapOffsettingAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OffsettingAssetsTable" xlink:label="loc_us-gaapOffsettingAssetsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapOffsettingAssetsLineItems" xlink:to="loc_us-gaapOffsettingAssetsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaapDerivativeInstrumentRiskAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapOffsettingAssetsTable" xlink:to="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EmployeesStockOptionMember" xlink:label="loc_FSIEmployeesStockOptionMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_FSIEmployeesStockOptionMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ConsultantsStockOptionsMember" xlink:label="loc_FSIConsultantsStockOptionsMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_FSIConsultantsStockOptionsMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOffsettingAssetsLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_50" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:title="00000082 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_srtOwnershipAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpnvestmentsLlcMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaapTypeOfArrangementAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_us-gaapTypeOfArrangementAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapTypeOfArrangementAxis" xlink:to="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaapArrangementsAndNonarrangementTransactionsMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapTypeOfArrangementAxis" xlink:to="loc_us-gaapArrangementsAndNonarrangementTransactionsMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OwnershipInterestPurchaseAgreementMember" xlink:label="loc_FSIOwnershipInterestPurchaseAgreementMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" xlink:to="loc_FSIOwnershipInterestPurchaseAgreementMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="loc_us-gaapMinorityInterest_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapMinorityInterest_60" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:label="loc_us-gaapMinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapMinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_60" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapNetIncomeLossAttributableToNoncontrollingInterest_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapNetIncomeLossAttributableToNoncontrollingInterest_60" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:title="00000083 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_srtOwnershipAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpnvestmentsLlcMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentMember" xlink:label="loc_FSIEnpInvestmentMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpInvestmentMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" xlink:label="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_70" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByParent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByParent_70" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="loc_us-gaapPaymentsToMinorityShareholders_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapPaymentsToMinorityShareholders_70" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax_70" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_70" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapAccountsReceivableNet_70" xlink:type="arc" order="5" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:title="00000084 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:label="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:label="loc_us-gaapScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:to="loc_srtProductOrServiceAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EWCPMember" xlink:label="loc_FSIEWCPMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_FSIEWCPMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BCPAMember" xlink:label="loc_FSIBCPAMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_FSIBCPAMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CorporateAndOtherMember" xlink:label="loc_us-gaapCorporateAndOtherMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_us-gaapCorporateAndOtherMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_70" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaapInterestExpense_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapInterestExpense_70" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationNonproduction" xlink:label="loc_us-gaapDepreciationNonproduction_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapDepreciationNonproduction_70" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit_70" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapProfitLoss_70" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_Segmentassets" xlink:label="loc_FSISegmentassets_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_FSISegmentassets_70" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment_70" xlink:type="arc" order="6" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:title="00000085 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:to="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="loc_srtStatementGeographicalAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_CA" xlink:label="loc_countryCA_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryCA_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_UnitedStatesandAbroadMember" xlink:label="loc_FSIUnitedStatesandAbroadMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_FSIUnitedStatesandAbroadMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_70" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" xlink:title="00000086 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:to="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="loc_srtStatementGeographicalAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_CA" xlink:label="loc_countryCA_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryCA_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="loc_countryUS_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryUS_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncurrentAssets" xlink:label="loc_us-gaapNoncurrentAssets_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:to="loc_us-gaapNoncurrentAssets_70" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:title="00000087 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EntityWideRevenueMajorCustomerLineItems" xlink:label="loc_us-gaapEntityWideRevenueMajorCustomerLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:label="loc_us-gaapScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapEntityWideRevenueMajorCustomerLineItems" xlink:to="loc_us-gaapScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaapConcentrationRiskByBenchmarkAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:to="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaapAccountsReceivableMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapAccountsReceivableMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srtMajorCustomersAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:to="loc_srtMajorCustomersAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srtNameOfMajorCustomerDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtMajorCustomersAxis" xlink:to="loc_srtNameOfMajorCustomerDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srtNameOfMajorCustomerDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtMajorCustomersAxis" xlink:to="loc_srtNameOfMajorCustomerDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ThreeCustomersMember" xlink:label="loc_FSIThreeCustomersMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_FSIThreeCustomersMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideRevenueMajorCustomerLineItems" xlink:to="loc_us-gaapAccountsReceivableNet_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockOptionExercisePercent" xlink:label="loc_FSIStockOptionExercisePercent_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideRevenueMajorCustomerLineItems" xlink:to="loc_FSIStockOptionExercisePercent_50" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:title="00000088 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventLineItems" xlink:label="loc_us-gaapSubsequentEventLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTable" xlink:label="loc_us-gaapSubsequentEventTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapSubsequentEventLineItems" xlink:to="loc_us-gaapSubsequentEventTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srtTitleOfIndividualAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapSubsequentEventTable" xlink:to="loc_srtTitleOfIndividualAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EmployeeMember" xlink:label="loc_FSIEmployeeMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_FSIEmployeeMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaapSubsequentEventTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapSubsequentEventTable" xlink:to="loc_us-gaapSubsequentEventTypeAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaapSubsequentEventTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapSubsequentEventTypeAxis" xlink:to="loc_us-gaapSubsequentEventTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaapSubsequentEventTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapSubsequentEventTypeAxis" xlink:to="loc_us-gaapSubsequentEventTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaapSubsequentEventMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSubsequentEventTypeDomain" xlink:to="loc_us-gaapSubsequentEventMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaapTypeOfArrangementAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapSubsequentEventTable" xlink:to="loc_us-gaapTypeOfArrangementAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapTypeOfArrangementAxis" xlink:to="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaapArrangementsAndNonarrangementTransactionsMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapTypeOfArrangementAxis" xlink:to="loc_us-gaapArrangementsAndNonarrangementTransactionsMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_UponExerciseofStockOptionsMember" xlink:label="loc_FSIUponExerciseofStockOptionsMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" xlink:to="loc_FSIUponExerciseofStockOptionsMember_10" xlink:type="arc" order="13" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSubsequentEventLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_30" xlink:type="arc" order="0" />
    </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>9
<FILENAME>fsi-20211231_lab.xml
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.13b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<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:xbrli="http://www.xbrl.org/2003/instance" 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" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" roleURI="http://www.xbrl.org/2009/role/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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xml:lang="en-US">Equity Components [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockMember_lbl" xml:lang="en-US">Common Stock [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_CapitalInExcessOfParValueMember" xlink:label="FSI_CapitalInExcessOfParValueMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CapitalInExcessOfParValueMember" xlink:to="FSI_CapitalInExcessOfParValueMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_CapitalInExcessOfParValueMember_lbl" xml:lang="en-US">Capital In Excess Of Par Value [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsMember_lbl" xml:lang="en-US">Retained Earnings [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ParentMember" xlink:label="us-gaap_ParentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ParentMember" xlink:to="us-gaap_ParentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ParentMember_lbl" xml:lang="en-US">Parent [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="us-gaap_NoncontrollingInterestMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncontrollingInterestMember" xlink:to="us-gaap_NoncontrollingInterestMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncontrollingInterestMember_lbl" xml:lang="en-US">Noncontrolling Interest [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_OwnershipAxis_lbl" xml:lang="en-US">Ownership [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLlcAndEnpMendotaMember" xlink:label="FSI_EnpInvestmentsLlcAndEnpMendotaMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpInvestmentsLlcAndEnpMendotaMember" xlink:to="FSI_EnpInvestmentsLlcAndEnpMendotaMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EnpInvestmentsLlcAndEnpMendotaMember_lbl" xml:lang="en-US">Enp Investments Llc And Enp Mendota [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="FSI_EnpnvestmentsLlcMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpnvestmentsLlcMember" xlink:to="FSI_EnpnvestmentsLlcMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EnpnvestmentsLlcMember_lbl" xml:lang="en-US">ENP Investments LLC [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LegalEntityAxis" xlink:to="dei_LegalEntityAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LegalEntityAxis_lbl" xml:lang="en-US">Legal Entity [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="FSI_EnpPeruInvestmentsLlcMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpPeruInvestmentsLlcMember" xlink:to="FSI_EnpPeruInvestmentsLlcMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EnpPeruInvestmentsLlcMember_lbl" xml:lang="en-US">Enp Peru Investments Llc [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="FSI_EnpInvestmentsLLCMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpInvestmentsLLCMember" xlink:to="FSI_EnpInvestmentsLLCMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EnpInvestmentsLLCMember_lbl" xml:lang="en-US">Enp Investments LLC [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl" xml:lang="en-US">Related Party [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_UnrelatedPartyMember" xlink:label="FSI_UnrelatedPartyMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_UnrelatedPartyMember" xlink:to="FSI_UnrelatedPartyMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_UnrelatedPartyMember_lbl" xml:lang="en-US">Unrelated Party [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="FSI_EnpRealtyLLCMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpRealtyLLCMember" xlink:to="FSI_EnpRealtyLLCMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EnpRealtyLLCMember_lbl" xml:lang="en-US">Enp Realty LLC [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeAxis_lbl" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MinimumMember_lbl" xml:lang="en-US">Minimum [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MaximumMember_lbl" xml:lang="en-US">Maximum [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ProductOrServiceAxis_lbl" xml:lang="en-US">Product and Service [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShippingAndHandlingMember" xlink:label="us-gaap_ShippingAndHandlingMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShippingAndHandlingMember" xlink:to="us-gaap_ShippingAndHandlingMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShippingAndHandlingMember_lbl" xml:lang="en-US">Shipping and Handling [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_lbl" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ThreePrimaryCustomersMember" xlink:label="FSI_ThreePrimaryCustomersMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ThreePrimaryCustomersMember" xlink:to="FSI_ThreePrimaryCustomersMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ThreePrimaryCustomersMember_lbl" xml:lang="en-US">Three Primary Customers [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerMember" xlink:label="us-gaap_RevenueFromContractWithCustomerMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerMember" xlink:to="us-gaap_RevenueFromContractWithCustomerMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerMember_lbl" xml:lang="en-US">Revenue from Contract with Customer Benchmark [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableMember" xlink:to="us-gaap_AccountsReceivableMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableMember_lbl" xml:lang="en-US">Accounts Receivable [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="us-gaap_ComputerEquipmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComputerEquipmentMember" xlink:to="us-gaap_ComputerEquipmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComputerEquipmentMember_lbl" xml:lang="en-US">Computer Equipment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FurnitureAndFixturesMember_lbl" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MachineryAndEquipmentMember" xlink:to="us-gaap_MachineryAndEquipmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MachineryAndEquipmentMember_lbl" xml:lang="en-US">Machinery and Equipment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="us-gaap_OfficeEquipmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OfficeEquipmentMember" xlink:to="us-gaap_OfficeEquipmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OfficeEquipmentMember_lbl" xml:lang="en-US">Office Equipment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BoatMember" xlink:label="FSI_BoatMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BoatMember" xlink:to="FSI_BoatMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_BoatMember_lbl" xml:lang="en-US">Boat [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BuildingAndImprovementsMember" xlink:label="FSI_BuildingAndImprovementsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BuildingAndImprovementsMember" xlink:to="FSI_BuildingAndImprovementsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_BuildingAndImprovementsMember_lbl" xml:lang="en-US">Building and improvements [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TrailerMember" xlink:label="FSI_TrailerMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TrailerMember" xlink:to="FSI_TrailerMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TrailerMember_lbl" xml:lang="en-US">Trailer [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AutomobilesMember" xlink:label="us-gaap_AutomobilesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AutomobilesMember" xlink:to="us-gaap_AutomobilesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AutomobilesMember_lbl" xml:lang="en-US">Automobiles [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PatentsMember" xlink:to="us-gaap_PatentsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PatentsMember_lbl" xml:lang="en-US">Patents [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TechnologyEquipmentMember" xlink:label="us-gaap_TechnologyEquipmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TechnologyEquipmentMember" xlink:to="us-gaap_TechnologyEquipmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TechnologyEquipmentMember_lbl" xml:lang="en-US">Technology Equipment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseholdImprovementsMember" xlink:to="us-gaap_LeaseholdImprovementsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeaseholdImprovementsMember_lbl" xml:lang="en-US">Leasehold Improvements [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_CustomerRelationshipsENPInvestmentsMember" xlink:label="FSI_CustomerRelationshipsENPInvestmentsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CustomerRelationshipsENPInvestmentsMember" xlink:to="FSI_CustomerRelationshipsENPInvestmentsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_CustomerRelationshipsENPInvestmentsMember_lbl" xml:lang="en-US">Customer Relationships - ENP Investments [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SoftwareENPInvestmentsMember" xlink:label="FSI_SoftwareENPInvestmentsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SoftwareENPInvestmentsMember" xlink:to="FSI_SoftwareENPInvestmentsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_SoftwareENPInvestmentsMember_lbl" xml:lang="en-US">Software - ENP Investments [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DevelopedTechnologyRightsMember" xlink:to="us-gaap_DevelopedTechnologyRightsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DevelopedTechnologyRightsMember_lbl" xml:lang="en-US">Developed Technology Rights [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LandMember" xlink:label="us-gaap_LandMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LandMember" xlink:to="us-gaap_LandMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LandMember_lbl" xml:lang="en-US">Land [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquipmentMember" xlink:label="us-gaap_EquipmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquipmentMember" xlink:to="us-gaap_EquipmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquipmentMember_lbl" xml:lang="en-US">Equipment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AwardTypeAxis_lbl" xml:lang="en-US">Award Type [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_CADMember" xlink:label="FSI_CADMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CADMember" xlink:to="FSI_CADMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_CADMember_lbl" xml:lang="en-US">CAD [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnPInvestmentsCorporationLLCMember" xlink:label="FSI_EnPInvestmentsCorporationLLCMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnPInvestmentsCorporationLLCMember" xlink:to="FSI_EnPInvestmentsCorporationLLCMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EnPInvestmentsCorporationLLCMember_lbl" xml:lang="en-US">EnP Investments Limited Liability Corporation (LLC) [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerRelationshipsMember" xlink:to="us-gaap_CustomerRelationshipsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CustomerRelationshipsMember_lbl" xml:lang="en-US">Customer Relationships [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:label="us-gaap_ComputerSoftwareIntangibleAssetMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:to="us-gaap_ComputerSoftwareIntangibleAssetMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComputerSoftwareIntangibleAssetMember_lbl" xml:lang="en-US">Computer Software, Intangible Asset [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="us-gaap_FairValueByAssetClassAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByAssetClassAxis" xlink:to="us-gaap_FairValueByAssetClassAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueByAssetClassAxis_lbl" xml:lang="en-US">Asset Class [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMember" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMember" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMember_lbl" xml:lang="en-US">Finite-Lived Intangible Assets [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_AppliedHoldingCorpMember" xlink:label="FSI_AppliedHoldingCorpMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_AppliedHoldingCorpMember" xlink:to="FSI_AppliedHoldingCorpMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_AppliedHoldingCorpMember_lbl" xml:lang="en-US">Applied Holding Corp [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TrioOpportunityCorpMember" xlink:label="FSI_TrioOpportunityCorpMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TrioOpportunityCorpMember" xlink:to="FSI_TrioOpportunityCorpMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TrioOpportunityCorpMember_lbl" xml:lang="en-US">Trio Opportunity Corp [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_StatementClassOfStockAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementClassOfStockAxis_lbl" xml:lang="en-US">Class of Stock [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassBMember" xlink:label="us-gaap_CommonClassBMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonClassBMember" xlink:to="us-gaap_CommonClassBMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonClassBMember_lbl" xml:lang="en-US">Common Class B [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FloridaBasedLLCMember" xlink:label="FSI_FloridaBasedLLCMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_FloridaBasedLLCMember" xlink:to="FSI_FloridaBasedLLCMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_FloridaBasedLLCMember_lbl" xml:lang="en-US">Florida Based LLC [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LygosIncMember" xlink:label="FSI_LygosIncMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LygosIncMember" xlink:to="FSI_LygosIncMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_LygosIncMember_lbl" xml:lang="en-US">Lygos Inc [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="us-gaap_TypeOfArrangementAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TypeOfArrangementAxis" xlink:to="us-gaap_TypeOfArrangementAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TypeOfArrangementAxis_lbl" xml:lang="en-US">Collaborative Arrangement and Arrangement Other than Collaborative [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NewAgreementMember" xlink:label="FSI_NewAgreementMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_NewAgreementMember" xlink:to="FSI_NewAgreementMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_NewAgreementMember_lbl" xml:lang="en-US">New Agreement [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityAxis_lbl" xml:lang="en-US">Lender Name [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankMember" xlink:label="FSI_HarrisBankMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_HarrisBankMember" xlink:to="FSI_HarrisBankMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_HarrisBankMember_lbl" xml:lang="en-US">Harris Bank [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankMember" xlink:label="FSI_MidlandStatesBankMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_MidlandStatesBankMember" xlink:to="FSI_MidlandStatesBankMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_MidlandStatesBankMember_lbl" xml:lang="en-US">Midland States Bank [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsequentEventTypeAxis_lbl" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventMember" xlink:to="us-gaap_SubsequentEventMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsequentEventMember_lbl" xml:lang="en-US">Subsequent Event [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NanoChemSolutionIncMember" xlink:label="FSI_NanoChemSolutionIncMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_NanoChemSolutionIncMember" xlink:to="FSI_NanoChemSolutionIncMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_NanoChemSolutionIncMember_lbl" xml:lang="en-US">NanoChem Solutions Inc [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentAxis_lbl" xml:lang="en-US">Debt Instrument [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TermLoanMember" xlink:label="FSI_TermLoanMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TermLoanMember" xlink:to="FSI_TermLoanMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TermLoanMember_lbl" xml:lang="en-US">Term Loan [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NanoChemSolutionsIncMember" xlink:label="FSI_NanoChemSolutionsIncMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_NanoChemSolutionsIncMember" xlink:to="FSI_NanoChemSolutionsIncMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_NanoChemSolutionsIncMember_lbl" xml:lang="en-US">NanoChem Solutions Inc [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_VariableRateAxis_lbl" xml:lang="en-US">Variable Rate [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrimeRateMember" xlink:label="us-gaap_PrimeRateMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrimeRateMember" xlink:to="us-gaap_PrimeRateMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrimeRateMember_lbl" xml:lang="en-US">Prime Rate [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandBankMember" xlink:label="FSI_MidlandBankMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_MidlandBankMember" xlink:to="FSI_MidlandBankMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_MidlandBankMember_lbl" xml:lang="en-US">Midland Bank [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FordMotorCreditCompanyMember" xlink:label="FSI_FordMotorCreditCompanyMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_FordMotorCreditCompanyMember" xlink:to="FSI_FordMotorCreditCompanyMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_FordMotorCreditCompanyMember_lbl" xml:lang="en-US">Ford Motor Credit Company [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramMember" xlink:label="FSI_PaycheckProtectionProgramMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PaycheckProtectionProgramMember" xlink:to="FSI_PaycheckProtectionProgramMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_PaycheckProtectionProgramMember_lbl" xml:lang="en-US">Paycheck Protection Program [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockYardsBankTrustMember" xlink:label="FSI_StockYardsBankTrustMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustMember" xlink:to="FSI_StockYardsBankTrustMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StockYardsBankTrustMember_lbl" xml:lang="en-US">Stock Yards Bank Trust [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" xlink:label="srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" xlink:to="srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis_lbl" xml:lang="en-US">Federal Home Loan Bank Branch [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_FederalHomeLoanBankOfCincinnatiMember" xlink:label="srt_FederalHomeLoanBankOfCincinnatiMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_FederalHomeLoanBankOfCincinnatiMember" xlink:to="srt_FederalHomeLoanBankOfCincinnatiMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_FederalHomeLoanBankOfCincinnatiMember_lbl" xml:lang="en-US">Federal Home Loan Bank of Cincinnati [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteOneWithMidlandBankMember" xlink:label="FSI_PromissoryNoteOneWithMidlandBankMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PromissoryNoteOneWithMidlandBankMember" xlink:to="FSI_PromissoryNoteOneWithMidlandBankMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_PromissoryNoteOneWithMidlandBankMember_lbl" xml:lang="en-US">Promissory Note One With Midland Bank [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteWithMidlandBankMember" xlink:label="FSI_PromissoryNoteWithMidlandBankMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PromissoryNoteWithMidlandBankMember" xlink:to="FSI_PromissoryNoteWithMidlandBankMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_PromissoryNoteWithMidlandBankMember_lbl" xml:lang="en-US">Promissory Note With Midland Bank [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankOneMember" xlink:label="FSI_HarrisBankOneMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_HarrisBankOneMember" xlink:to="FSI_HarrisBankOneMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_HarrisBankOneMember_lbl" xml:lang="en-US">Harris Bank One [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramOneMember" xlink:label="FSI_PaycheckProtectionProgramOneMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PaycheckProtectionProgramOneMember" xlink:to="FSI_PaycheckProtectionProgramOneMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_PaycheckProtectionProgramOneMember_lbl" xml:lang="en-US">Paycheck Protection Program One [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankOneMember" xlink:label="FSI_MidlandStatesBankOneMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_MidlandStatesBankOneMember" xlink:to="FSI_MidlandStatesBankOneMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_MidlandStatesBankOneMember_lbl" xml:lang="en-US">Midland States Bank One [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankTwoMember" xlink:label="FSI_MidlandStatesBankTwoMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_MidlandStatesBankTwoMember" xlink:to="FSI_MidlandStatesBankTwoMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_MidlandStatesBankTwoMember_lbl" xml:lang="en-US">Midland States Bank Two [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="srt_ConsolidatedEntitiesAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ConsolidatedEntitiesAxis" xlink:to="srt_ConsolidatedEntitiesAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ConsolidatedEntitiesAxis_lbl" xml:lang="en-US">Consolidated Entities [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ParentCompanyMember" xlink:label="srt_ParentCompanyMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ParentCompanyMember" xlink:to="srt_ParentCompanyMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ParentCompanyMember_lbl" xml:lang="en-US">Parent Company [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="us-gaap_IncomeTaxAuthorityNameAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxAuthorityNameAxis" xlink:to="us-gaap_IncomeTaxAuthorityNameAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxAuthorityNameAxis_lbl" xml:lang="en-US">Income Tax Authority, Name [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="us-gaap_CanadaRevenueAgencyMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CanadaRevenueAgencyMember" xlink:to="us-gaap_CanadaRevenueAgencyMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CanadaRevenueAgencyMember_lbl" xml:lang="en-US">Canada Revenue Agency [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InternalRevenueServiceIRSMember" xlink:label="us-gaap_InternalRevenueServiceIRSMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InternalRevenueServiceIRSMember" xlink:to="us-gaap_InternalRevenueServiceIRSMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InternalRevenueServiceIRSMember_lbl" xml:lang="en-US">Internal Revenue Service (IRS) [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxPeriodAxis" xlink:label="us-gaap_TaxPeriodAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TaxPeriodAxis" xlink:to="us-gaap_TaxPeriodAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TaxPeriodAxis_lbl" xml:lang="en-US">Tax Period [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandTwentyNineTaxYearMember" xlink:label="FSI_TwoThousandTwentyNineTaxYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandTwentyNineTaxYearMember" xlink:to="FSI_TwoThousandTwentyNineTaxYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandTwentyNineTaxYearMember_lbl" xml:lang="en-US">2029 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyTaxYearMember" xlink:label="FSI_TwoThousandThirtyTaxYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyTaxYearMember" xlink:to="FSI_TwoThousandThirtyTaxYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandThirtyTaxYearMember_lbl" xml:lang="en-US">2030 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyOneTaxYearMember" xlink:label="FSI_TwoThousandThirtyOneTaxYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyOneTaxYearMember" xlink:to="FSI_TwoThousandThirtyOneTaxYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandThirtyOneTaxYearMember_lbl" xml:lang="en-US">2031 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtySevenTaxYearMember" xlink:label="FSI_TwoThousandThirtySevenTaxYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtySevenTaxYearMember" xlink:to="FSI_TwoThousandThirtySevenTaxYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandThirtySevenTaxYearMember_lbl" xml:lang="en-US">2037 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyEightTaxYearMember" xlink:label="FSI_TwoThousandThirtyEightTaxYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyEightTaxYearMember" xlink:to="FSI_TwoThousandThirtyEightTaxYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandThirtyEightTaxYearMember_lbl" xml:lang="en-US">2038 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyNineTaxYearMember" xlink:label="FSI_TwoThousandThirtyNineTaxYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyNineTaxYearMember" xlink:to="FSI_TwoThousandThirtyNineTaxYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandThirtyNineTaxYearMember_lbl" xml:lang="en-US">2039 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandFortyTaxYearMember" xlink:label="FSI_TwoThousandFortyTaxYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandFortyTaxYearMember" xlink:to="FSI_TwoThousandFortyTaxYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandFortyTaxYearMember_lbl" xml:lang="en-US">2040 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandFortyOneTaxYearMember" xlink:label="FSI_TwoThousandFortyOneTaxYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandFortyOneTaxYearMember" xlink:to="FSI_TwoThousandFortyOneTaxYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandFortyOneTaxYearMember_lbl" xml:lang="en-US">2041 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_TitleOfIndividualAxis_lbl" xml:lang="en-US">Title of Individual [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ConsultantsMember" xlink:label="FSI_ConsultantsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ConsultantsMember" xlink:to="FSI_ConsultantsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ConsultantsMember_lbl" xml:lang="en-US">Consultants [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EmployeesMember" xlink:label="FSI_EmployeesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EmployeesMember" xlink:to="FSI_EmployeesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EmployeesMember_lbl" xml:lang="en-US">Employees [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeInstrumentRiskAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeInstrumentRiskAxis_lbl" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EmployeesStockOptionMember" xlink:label="FSI_EmployeesStockOptionMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EmployeesStockOptionMember" xlink:to="FSI_EmployeesStockOptionMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EmployeesStockOptionMember_lbl" xml:lang="en-US">Employees Stock Option [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ConsultantsStockOptionsMember" xlink:label="FSI_ConsultantsStockOptionsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ConsultantsStockOptionsMember" xlink:to="FSI_ConsultantsStockOptionsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ConsultantsStockOptionsMember_lbl" xml:lang="en-US">Consultants Stock Options [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentMember" xlink:label="FSI_EnpInvestmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpInvestmentMember" xlink:to="FSI_EnpInvestmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EnpInvestmentMember_lbl" xml:lang="en-US">ENP Investment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OwnershipInterestPurchaseAgreementMember" xlink:label="FSI_OwnershipInterestPurchaseAgreementMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OwnershipInterestPurchaseAgreementMember" xlink:to="FSI_OwnershipInterestPurchaseAgreementMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_OwnershipInterestPurchaseAgreementMember_lbl" xml:lang="en-US">Ownership Interest Purchase Agreement [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EWCPMember" xlink:label="FSI_EWCPMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EWCPMember" xlink:to="FSI_EWCPMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EWCPMember_lbl" xml:lang="en-US">EWCP [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_StatementBusinessSegmentsAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementBusinessSegmentsAxis_lbl" xml:lang="en-US">Segments [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CorporateAndOtherMember" xlink:label="us-gaap_CorporateAndOtherMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CorporateAndOtherMember" xlink:to="us-gaap_CorporateAndOtherMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CorporateAndOtherMember_lbl" xml:lang="en-US">Corporate and Other [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BCPAMember" xlink:label="FSI_BCPAMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BCPAMember" xlink:to="FSI_BCPAMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_BCPAMember_lbl" xml:lang="en-US">BCPA [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_StatementGeographicalAxis_lbl" xml:lang="en-US">Geographical [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_CA" xlink:label="country_CA" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_CA" xlink:to="country_CA_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_CA_lbl" xml:lang="en-US">CANADA</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_UnitedStatesandAbroadMember" xlink:label="FSI_UnitedStatesandAbroadMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_UnitedStatesandAbroadMember" xlink:to="FSI_UnitedStatesandAbroadMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_UnitedStatesandAbroadMember_lbl" xml:lang="en-US">United States and Abroad [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="country_US" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_US" xlink:to="country_US_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_US_lbl" xml:lang="en-US">UNITED STATES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_MajorCustomersAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MajorCustomersAxis_lbl" xml:lang="en-US">Customer [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ThreeCustomersMember" xlink:label="FSI_ThreeCustomersMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ThreeCustomersMember" xlink:to="FSI_ThreeCustomersMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ThreeCustomersMember_lbl" xml:lang="en-US">Three Customers [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EmployeeMember" xlink:label="FSI_EmployeeMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EmployeeMember" xlink:to="FSI_EmployeeMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EmployeeMember_lbl" xml:lang="en-US">Employee [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_UponExerciseofStockOptionsMember" xlink:label="FSI_UponExerciseofStockOptionsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_UponExerciseofStockOptionsMember" xlink:to="FSI_UponExerciseofStockOptionsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_UponExerciseofStockOptionsMember_lbl" xml:lang="en-US">Upon Exercise of Stock Options [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.xsd#dei_AmendmentDescription" xlink:label="dei_AmendmentDescription" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentDescription" xlink:to="dei_AmendmentDescription_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentDescription_lbl" xml:lang="en-US">Amendment Description</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentRegistrationStatement" xlink:label="dei_DocumentRegistrationStatement" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentRegistrationStatement" xlink:to="dei_DocumentRegistrationStatement_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentRegistrationStatement_lbl" xml:lang="en-US">Document Registration Statement</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAnnualReport_lbl" xml:lang="en-US">Document Annual Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentQuarterlyReport_lbl" xml:lang="en-US">Document Quarterly Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentTransitionReport_lbl" xml:lang="en-US">Document Transition Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentShellCompanyReport" xlink:label="dei_DocumentShellCompanyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyReport" xlink:to="dei_DocumentShellCompanyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyReport_lbl" xml:lang="en-US">Document Shell Company Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentShellCompanyEventDate" xlink:label="dei_DocumentShellCompanyEventDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyEventDate" xlink:to="dei_DocumentShellCompanyEventDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyEventDate_lbl" xml:lang="en-US">Document Shell Company Event Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentPeriodStartDate" xlink:label="dei_DocumentPeriodStartDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodStartDate" xlink:to="dei_DocumentPeriodStartDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodStartDate_lbl" xml:lang="en-US">Document Period Start Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US">Document Fiscal Period Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US">Document Fiscal Year Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xml:lang="en-US">Current Fiscal Year End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.xsd#dei_EntityPrimarySicNumber" xlink:label="dei_EntityPrimarySicNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPrimarySicNumber" xlink:to="dei_EntityPrimarySicNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPrimarySicNumber_lbl" xml:lang="en-US">Entity Primary SIC Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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 or Country Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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 One</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US">Entity Address, Address Line Two</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine3" xlink:label="dei_EntityAddressAddressLine3" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine3" xlink:to="dei_EntityAddressAddressLine3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine3_lbl" xml:lang="en-US">Entity Address, Address Line Three</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCountry" xlink:to="dei_EntityAddressCountry_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCountry_lbl" xml:lang="en-US">Entity Address, Country</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.xsd#dei_CountryRegion" xlink:label="dei_CountryRegion" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CountryRegion" xlink:to="dei_CountryRegion_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CountryRegion_lbl" xml:lang="en-US">Country Region</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.xsd#dei_Extension" xlink:label="dei_Extension" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Extension" xlink:to="dei_Extension_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Extension_lbl" xml:lang="en-US">Extension</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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">Title of 12(b) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_NoTradingSymbolFlag" xlink:label="dei_NoTradingSymbolFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_NoTradingSymbolFlag" xlink:to="dei_NoTradingSymbolFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_NoTradingSymbolFlag_lbl" xml:lang="en-US">No Trading Symbol Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_Security12gTitle" xlink:label="dei_Security12gTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12gTitle" xlink:to="dei_Security12gTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12gTitle_lbl" xml:lang="en-US">Title of 12(g) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_SecurityReportingObligation" xlink:label="dei_SecurityReportingObligation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityReportingObligation" xlink:to="dei_SecurityReportingObligation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityReportingObligation_lbl" xml:lang="en-US">Security Reporting Obligation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AnnualInformationForm" xlink:label="dei_AnnualInformationForm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AnnualInformationForm" xlink:to="dei_AnnualInformationForm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AnnualInformationForm_lbl" xml:lang="en-US">Annual Information Form</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="dei_AuditedAnnualFinancialStatements" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditedAnnualFinancialStatements" xlink:to="dei_AuditedAnnualFinancialStatements_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditedAnnualFinancialStatements_lbl" xml:lang="en-US">Audited Annual Financial Statements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityVoluntaryFilers_lbl" xml:lang="en-US">Entity Voluntary Filers</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCurrentReportingStatus_lbl" xml:lang="en-US">Entity Current Reporting Status</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xml:lang="en-US">Entity Interactive Data Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFilerCategory_lbl" xml:lang="en-US">Entity Filer Category</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntitySmallBusiness_lbl" xml:lang="en-US">Entity Small Business</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.xsd#dei_EntityExTransitionPeriod" xlink:label="dei_EntityExTransitionPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityExTransitionPeriod" xlink:to="dei_EntityExTransitionPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityExTransitionPeriod_lbl" xml:lang="en-US">Elected Not To Use the Extended Transition Period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAccountingStandard" xlink:label="dei_DocumentAccountingStandard" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAccountingStandard" xlink:to="dei_DocumentAccountingStandard_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAccountingStandard_lbl" xml:lang="en-US">Document Accounting Standard</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_OtherReportingStandardItemNumber" xlink:label="dei_OtherReportingStandardItemNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_OtherReportingStandardItemNumber" xlink:to="dei_OtherReportingStandardItemNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_OtherReportingStandardItemNumber_lbl" xml:lang="en-US">Other Reporting Standard Item Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityShellCompany_lbl" xml:lang="en-US">Entity Shell Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPublicFloat_lbl" xml:lang="en-US">Entity Public Float</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityBankruptcyProceedingsReportingCurrent" xlink:to="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xml:lang="en-US">Entity Bankruptcy Proceedings, Reporting Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="dei_IcfrAuditorAttestationFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_IcfrAuditorAttestationFlag" xlink:to="dei_IcfrAuditorAttestationFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_IcfrAuditorAttestationFlag_lbl" xml:lang="en-US">ICFR Auditor Attestation Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorName" xlink:label="dei_AuditorName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorName" xlink:to="dei_AuditorName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorName_lbl" xml:lang="en-US">Auditor Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorFirmId" xlink:label="dei_AuditorFirmId" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorFirmId" xlink:to="dei_AuditorFirmId_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorFirmId_lbl" xml:lang="en-US">Auditor Firm ID</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorLocation" xlink:label="dei_AuditorLocation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorLocation" xlink:to="dei_AuditorLocation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorLocation_lbl" xml:lang="en-US">Auditor Location</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsAbstract_lbl" xml:lang="en-US">Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xml:lang="en-US">Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Cash" xlink:label="us-gaap_Cash" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Cash" xlink:to="us-gaap_Cash_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Cash_lbl" xml:lang="en-US">Cash</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepositsAssetsCurrent" xlink:label="us-gaap_DepositsAssetsCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepositsAssetsCurrent" xlink:to="us-gaap_DepositsAssetsCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepositsAssetsCurrent_lbl" xml:lang="en-US">Term deposits</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xml:lang="en-US">Accounts receivable (Note 4)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryNet_lbl" xml:lang="en-US">Inventories (Note 5)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidExpenseCurrent_lbl" xml:lang="en-US">Prepaid expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AssetsCurrent_lbl" xml:lang="en-US">Total current assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Property, equipment and leaseholds, net (Note 6)</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FiniteLivedPatentGross" xlink:label="FSI_FiniteLivedPatentGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_FiniteLivedPatentGross" xlink:to="FSI_FiniteLivedPatentGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_FiniteLivedPatentGross_lbl" xml:lang="en-US">Patents (Note 7)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xml:lang="en-US">Right of use assets (Note 3)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xml:lang="en-US">Intangible assets (Note 8)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepositsAssetsNoncurrent" xlink:label="us-gaap_DepositsAssetsNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepositsAssetsNoncurrent" xlink:to="us-gaap_DepositsAssetsNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepositsAssetsNoncurrent_lbl" xml:lang="en-US">Long term deposits (Note 9)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestments" xlink:to="us-gaap_EquityMethodInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestments_lbl" xml:lang="en-US">Investments (Note 10)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Goodwill_lbl" xml:lang="en-US">Goodwill (Note 8)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xml:lang="en-US">Deferred tax asset (Note 14)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Assets_lbl" xml:lang="en-US">Total Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAbstract" xlink:label="us-gaap_LiabilitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAbstract" xlink:to="us-gaap_LiabilitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAbstract_lbl" xml:lang="en-US">Liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xml:lang="en-US">Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xml:lang="en-US">Accounts payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xml:lang="en-US">Accrued liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="us-gaap_DeferredRevenueCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredRevenueCurrent" xlink:to="us-gaap_DeferredRevenueCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredRevenueCurrent_lbl" xml:lang="en-US">Deferred revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxesPayableCurrent" xlink:label="us-gaap_TaxesPayableCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TaxesPayableCurrent" xlink:to="us-gaap_TaxesPayableCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TaxesPayableCurrent_lbl" xml:lang="en-US">Income taxes payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="us-gaap_LinesOfCreditCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LinesOfCreditCurrent" xlink:to="us-gaap_LinesOfCreditCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LinesOfCreditCurrent_lbl" xml:lang="en-US">Short term line of credit (Note 11)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US">Current portion of lease liability (Note 3)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xml:lang="en-US">Current portion of long term debt (Note 12)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xml:lang="en-US">Total current liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xml:lang="en-US">Lease liability (Note 3)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl" xml:lang="en-US">Deferred income tax liability (Note 14)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xml:lang="en-US">Long term debt (Note 12)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Liabilities_lbl" xml:lang="en-US">Total Liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xml:lang="en-US">Stockholders&#8217; Equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockValue_lbl" xml:lang="en-US">Capital stock (Note 17) Authorized: 50,000,000 common shares with a par value of $0.001 each; 1,000,000 preferred shares with a par value of $0.01 each Issued and outstanding: 12,355,246 (2020: 12,260,545) common shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xml:lang="en-US">Capital in excess of par value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xml:lang="en-US">Other comprehensive loss</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xml:lang="en-US">Accumulated earnings</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_StockholdersEquity_lbl" xml:lang="en-US">Total stockholders&#8217; equity &#8211; controlling interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="us-gaap_MinorityInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterest" xlink:to="us-gaap_MinorityInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MinorityInterest_lbl" xml:lang="en-US">Non-controlling interests (Note 18)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Total Stockholders&#8217; Equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xml:lang="en-US">Total Liabilities and Stockholders&#8217; Equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xml:lang="en-US">Common stock, shares authorized</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Common stock, par value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xml:lang="en-US">Preferred stock, shares authorized</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Preferred stock, par value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xml:lang="en-US">Common stock, shares issued</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xml:lang="en-US">Common stock, shares outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementAbstract_lbl" xml:lang="en-US">Income Statement [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xml:lang="en-US">Sales</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xml:lang="en-US">Cost of sales (Note 6, 7 &amp; 8)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_GrossProfit_lbl" xml:lang="en-US">Gross profit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingExpensesAbstract_lbl" xml:lang="en-US">Operating Expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalariesAndWages" xlink:label="us-gaap_SalariesAndWages" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalariesAndWages" xlink:to="us-gaap_SalariesAndWages_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalariesAndWages_lbl" xml:lang="en-US">Wages</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OfficersCompensation" xlink:label="us-gaap_OfficersCompensation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OfficersCompensation" xlink:to="us-gaap_OfficersCompensation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OfficersCompensation_lbl" xml:lang="en-US">Administrative salaries and benefits</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralInsuranceExpense" xlink:label="us-gaap_GeneralInsuranceExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralInsuranceExpense" xlink:to="us-gaap_GeneralInsuranceExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeneralInsuranceExpense_lbl" xml:lang="en-US">Insurance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseExpense" xlink:to="us-gaap_OperatingLeaseExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseExpense_lbl" xml:lang="en-US">Lease expense</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_Consulting" xlink:label="FSI_Consulting" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_Consulting" xlink:to="FSI_Consulting_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_Consulting_lbl" xml:lang="en-US">Consulting</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfessionalFees" xlink:label="us-gaap_ProfessionalFees" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfessionalFees" xlink:to="us-gaap_ProfessionalFees_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProfessionalFees_lbl" xml:lang="en-US">Professional fees</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherGeneralExpense" xlink:label="us-gaap_OtherGeneralExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherGeneralExpense" xlink:to="us-gaap_OtherGeneralExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherGeneralExpense_lbl" xml:lang="en-US">Office and miscellaneous</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InterestExpenses" xlink:label="FSI_InterestExpenses" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InterestExpenses" xlink:to="FSI_InterestExpenses_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_InterestExpenses_lbl" xml:lang="en-US">Interest expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingAndMarketingExpense" xlink:to="us-gaap_SellingAndMarketingExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SellingAndMarketingExpense_lbl" xml:lang="en-US">Advertising and promotion</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ResearchAndDevelopmentExpense_lbl" xml:lang="en-US">Research</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TravelAndEntertainmentExpense" xlink:label="us-gaap_TravelAndEntertainmentExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TravelAndEntertainmentExpense" xlink:to="us-gaap_TravelAndEntertainmentExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TravelAndEntertainmentExpense_lbl" xml:lang="en-US">Travel</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InvestorRelationsAndTransferAgentFee" xlink:label="FSI_InvestorRelationsAndTransferAgentFee" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InvestorRelationsAndTransferAgentFee" xlink:to="FSI_InvestorRelationsAndTransferAgentFee_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_InvestorRelationsAndTransferAgentFee_lbl" xml:lang="en-US">Investor relations and transfer agent fee</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_Commissions" xlink:label="FSI_Commissions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_Commissions" xlink:to="FSI_Commissions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_Commissions_lbl" xml:lang="en-US">Commissions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommunicationsAndInformationTechnology" xlink:label="us-gaap_CommunicationsAndInformationTechnology" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommunicationsAndInformationTechnology" xlink:to="us-gaap_CommunicationsAndInformationTechnology_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommunicationsAndInformationTechnology_lbl" xml:lang="en-US">Telecommunications</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_lbl" xml:lang="en-US">Currency exchange</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UtilitiesOperatingExpense" xlink:label="us-gaap_UtilitiesOperatingExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UtilitiesOperatingExpense" xlink:to="us-gaap_UtilitiesOperatingExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UtilitiesOperatingExpense_lbl" xml:lang="en-US">Utilities</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ShippingCost" xlink:label="FSI_ShippingCost" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ShippingCost" xlink:to="FSI_ShippingCost_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ShippingCost_lbl" xml:lang="en-US">Shipping</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForDoubtfulAccounts" xlink:to="us-gaap_ProvisionForDoubtfulAccounts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProvisionForDoubtfulAccounts_lbl" xml:lang="en-US">Bad debt expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingExpenses_lbl" xml:lang="en-US">Total operating expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xml:lang="en-US">Operating income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl" xml:lang="en-US">Gain on sale of equipment (Note 6)</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainLossOnSaleOfLand" xlink:label="FSI_GainLossOnSaleOfLand" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainLossOnSaleOfLand" xlink:to="FSI_GainLossOnSaleOfLand_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_GainLossOnSaleOfLand_lbl" xml:lang="en-US">Gain on sale of land (Note 6)</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PppLoanForgiveness" xlink:label="FSI_PppLoanForgiveness" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PppLoanForgiveness" xlink:to="FSI_PppLoanForgiveness_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_PppLoanForgiveness_lbl" xml:lang="en-US">PPP loan forgiveness (Note 12)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnInvestments" xlink:label="us-gaap_GainLossOnInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnInvestments" xlink:to="us-gaap_GainLossOnInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnInvestments_lbl" xml:lang="en-US">Gain on investments (Note 10)</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainOnAcquisition" xlink:label="FSI_GainOnAcquisition" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainOnAcquisition" xlink:to="FSI_GainOnAcquisition_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_GainOnAcquisition_lbl" xml:lang="en-US">Gain on acquisition of ENP Realty (Note 10)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentIncomeInterest" xlink:label="us-gaap_InvestmentIncomeInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentIncomeInterest" xlink:to="us-gaap_InvestmentIncomeInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentIncomeInterest_lbl" xml:lang="en-US">Interest income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xml:lang="en-US">Income before income tax</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract_lbl" xml:lang="en-US">Income taxes (Note 14)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred income tax expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Current income tax expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProfitLoss_lbl" xml:lang="en-US">Net income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Net income attributable to non-controlling interests</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLoss_lbl" xml:lang="en-US">Net income attributable to controlling interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasicAndDiluted" xlink:label="us-gaap_EarningsPerShareBasicAndDiluted" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasicAndDiluted" xlink:to="us-gaap_EarningsPerShareBasicAndDiluted_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasicAndDiluted_lbl" xml:lang="en-US">Income per share (basic and diluted) (Note 15)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US">Weighted average number of common shares (basic)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US">Weighted average number of common shares (diluted)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_lbl" xml:lang="en-US">Other comprehensive income:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xml:lang="en-US">Unrealized gain on foreign currency transactions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Total comprehensive income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Comprehensive income &#8211; non-controlling interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xml:lang="en-US">Comprehensive income attributable to controlling interests</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Operating activities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProfitLoss_2_lbl" xml:lang="en-US">Net income for the year</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Adjustments to reconcile net income to net cash:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensation_lbl" xml:lang="en-US">Stock based compensation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationAndAmortization" xlink:to="us-gaap_DepreciationAndAmortization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationAndAmortization_lbl" xml:lang="en-US">Depreciation and amortization</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LeaseRightOfUseFinancing" xlink:label="FSI_LeaseRightOfUseFinancing" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LeaseRightOfUseFinancing" xlink:to="FSI_LeaseRightOfUseFinancing_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_LeaseRightOfUseFinancing_lbl" xml:lang="en-US">Lease right of use financing</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization_lbl" xml:lang="en-US">Lease right of use amortization</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainLossOnInvestment" xlink:label="FSI_GainLossOnInvestment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainLossOnInvestment" xlink:to="FSI_GainLossOnInvestment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="FSI_GainLossOnInvestment_lbl" xml:lang="en-US">Gain on investments</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BadDebtExpense" xlink:label="FSI_BadDebtExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BadDebtExpense" xlink:to="FSI_BadDebtExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="FSI_BadDebtExpense_lbl" xml:lang="en-US">Bad debt expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_2_lbl" xml:lang="en-US">Deferred income tax expense (recovery)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_2_lbl" xml:lang="en-US">Gain on sale of equipment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainLossOnSaleOfLand" xlink:to="FSI_GainLossOnSaleOfLand_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="FSI_GainLossOnSaleOfLand_2_lbl" xml:lang="en-US">Gain on sale of land</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramLoanForgiveness" xlink:label="FSI_PaycheckProtectionProgramLoanForgiveness" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PaycheckProtectionProgramLoanForgiveness" xlink:to="FSI_PaycheckProtectionProgramLoanForgiveness_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="FSI_PaycheckProtectionProgramLoanForgiveness_lbl" xml:lang="en-US">PPP loan forgiveness</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xml:lang="en-US">Changes in non-cash working capital items:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xml:lang="en-US">Increase in accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xml:lang="en-US">(Increase) decrease in inventories</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl" xml:lang="en-US">Increase in prepaid expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_lbl" xml:lang="en-US">Increase in accounts payable and accrued liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl" xml:lang="en-US">Increase in taxes payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl" xml:lang="en-US">Increase in deferred revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xml:lang="en-US">Cash provided by operating activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xml:lang="en-US">Investing activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromOtherDeposits" xlink:label="us-gaap_ProceedsFromOtherDeposits" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromOtherDeposits" xlink:to="us-gaap_ProceedsFromOtherDeposits_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromOtherDeposits_lbl" xml:lang="en-US">Return of long term deposits</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="us-gaap_PaymentsToAcquireInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireInvestments" xlink:to="us-gaap_PaymentsToAcquireInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquireInvestments_lbl" xml:lang="en-US">Purchase of investments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:label="us-gaap_ProceedsFromSaleOfEquityMethodInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:to="us-gaap_ProceedsFromSaleOfEquityMethodInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleOfEquityMethodInvestments_lbl" xml:lang="en-US">Proceeds of equity investment distributions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_lbl" xml:lang="en-US">Acquisition of ENP Realty LLC</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment_lbl" xml:lang="en-US">Sale of property and equipment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xml:lang="en-US">Purchase of property and equipment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xml:lang="en-US">Cash used in investing activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xml:lang="en-US">Financing activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:label="us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:to="us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_lbl" xml:lang="en-US">Advance (repayment) of short term line of credit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLongTermDebt" xlink:to="us-gaap_RepaymentsOfLongTermDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_RepaymentsOfLongTermDebt_lbl" xml:lang="en-US">Repayment of long term debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="us-gaap_ProceedsFromIssuanceOfLongTermDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:to="us-gaap_ProceedsFromIssuanceOfLongTermDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromIssuanceOfLongTermDebt_lbl" xml:lang="en-US">Proceeds of long term debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfFinancingCosts" xlink:label="us-gaap_PaymentsOfFinancingCosts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfFinancingCosts" xlink:to="us-gaap_PaymentsOfFinancingCosts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsOfFinancingCosts_lbl" xml:lang="en-US">Lease payments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfDebt" xlink:label="us-gaap_RepaymentsOfDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfDebt" xlink:to="us-gaap_RepaymentsOfDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_RepaymentsOfDebt_lbl" xml:lang="en-US">Repayment of convertible note</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="us-gaap_PaymentsToMinorityShareholders" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToMinorityShareholders" xlink:to="us-gaap_PaymentsToMinorityShareholders_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToMinorityShareholders_lbl" xml:lang="en-US">Distribution to non-controlling interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock_lbl" xml:lang="en-US">Sale of common stock</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xml:lang="en-US">Cash used in financing activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xml:lang="en-US">Effect of exchange rate changes on cash</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xml:lang="en-US">Inflow (outflow) of cash</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xml:lang="en-US">Cash resources, beginning</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2_lbl" xml:lang="en-US">Cash resources, ending</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_lbl" xml:lang="en-US">Cash resources are comprised of:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xml:lang="en-US">Cash and cash equivalents</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermInvestments" xlink:label="us-gaap_ShortTermInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermInvestments" xlink:to="us-gaap_ShortTermInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShortTermInvestments_lbl" xml:lang="en-US">Term deposits</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xml:lang="en-US">Supplemental disclosure of cash flow information:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaidNet" xlink:to="us-gaap_IncomeTaxesPaidNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxesPaidNet_lbl" xml:lang="en-US">Income taxes paid</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestPaidNet_lbl" xml:lang="en-US">Interest paid</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities" xlink:label="FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities" xlink:to="FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities_lbl" xml:lang="en-US">Inventory additions in accounts payable and accrued liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementTable_lbl" xml:lang="en-US">Statement [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementLineItems_lbl" xml:lang="en-US">Statement [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_2_lbl" xml:lang="en-US">Beginning balance, value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_SharesOutstanding_lbl" xml:lang="en-US">Ending balance, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_lbl" xml:lang="en-US">Translation adjustment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:to="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" xml:lang="en-US">Common stock issued</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_lbl" xml:lang="en-US">Common stock issued, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:label="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:to="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_lbl" xml:lang="en-US">Distributions to noncontrolling interests</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xml:lang="en-US">Stock-based compensation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_3_lbl" xml:lang="en-US">Ending balance, value</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharesOutstanding_2_lbl" xml:lang="en-US">Ending balance, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountingPoliciesAbstract_lbl" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl" xml:lang="en-US">BASIS OF PRESENTATION</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xml:lang="en-US">SIGNIFICANT ACCOUNTING POLICIES</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="FSI_DisclosureLeasesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DisclosureLeasesAbstract" xlink:to="FSI_DisclosureLeasesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_DisclosureLeasesAbstract_lbl" xml:lang="en-US">Leases</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xml:lang="en-US">LEASES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_ReceivablesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ReceivablesAbstract_lbl" xml:lang="en-US">Receivables [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinancingReceivablesTextBlock" xlink:label="us-gaap_FinancingReceivablesTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivablesTextBlock" xlink:to="us-gaap_FinancingReceivablesTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancingReceivablesTextBlock_lbl" xml:lang="en-US">ACCOUNTS RECEIVABLE</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryDisclosureAbstract_lbl" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl" xml:lang="en-US">INVENTORIES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract_lbl" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl" xml:lang="en-US">PROPERTY, EQUIPMENT AND LEASEHOLDS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_IntangibleAssetsDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock_lbl" xml:lang="en-US">PATENTS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl" xml:lang="en-US">GOODWILL AND INTANGIBLE ASSETS</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLongTermDepositsAbstract" xlink:label="FSI_DisclosureLongTermDepositsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DisclosureLongTermDepositsAbstract" xlink:to="FSI_DisclosureLongTermDepositsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_DisclosureLongTermDepositsAbstract_lbl" xml:lang="en-US">Long Term Deposits</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LongTermDepositsTextBlock" xlink:label="FSI_LongTermDepositsTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LongTermDepositsTextBlock" xlink:to="FSI_LongTermDepositsTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_LongTermDepositsTextBlock_lbl" xml:lang="en-US">LONG TERM DEPOSITS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract_lbl" xml:lang="en-US">Equity Method Investments and Joint Ventures [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:label="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:to="us-gaap_EquityMethodInvestmentsDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentsDisclosureTextBlock_lbl" xml:lang="en-US">INVESTMENTS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDisclosureAbstract_lbl" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtTextBlock" xlink:label="us-gaap_ShortTermDebtTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermDebtTextBlock" xlink:to="us-gaap_ShortTermDebtTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShortTermDebtTextBlock_lbl" xml:lang="en-US">SHORT-TERM LINE OF CREDIT</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="us-gaap_LongTermDebtTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtTextBlock" xlink:to="us-gaap_LongTermDebtTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtTextBlock_lbl" xml:lang="en-US">LONG TERM DEBT</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xml:lang="en-US">CONVERTIBLE NOTE PAYABLE</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xml:lang="en-US">INCOME TAXES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl" xml:lang="en-US">INCOME PER SHARE</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl" xml:lang="en-US">Share-based Payment Arrangement [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" xml:lang="en-US">STOCK OPTIONS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_EquityAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityAbstract_lbl" xml:lang="en-US">Equity [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xml:lang="en-US">CAPITAL STOCK</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestAbstract" xlink:label="us-gaap_NoncontrollingInterestAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncontrollingInterestAbstract" xlink:to="us-gaap_NoncontrollingInterestAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncontrollingInterestAbstract_lbl" xml:lang="en-US">Noncontrolling Interest [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestDisclosureTextBlock" xlink:label="us-gaap_MinorityInterestDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestDisclosureTextBlock" xlink:to="us-gaap_MinorityInterestDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MinorityInterestDisclosureTextBlock_lbl" xml:lang="en-US">NON-CONTROLLING INTERESTS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentReportingAbstract_lbl" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xml:lang="en-US">SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsequentEventsAbstract_lbl" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsTextBlock" xlink:to="us-gaap_SubsequentEventsTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsequentEventsTextBlock_lbl" xml:lang="en-US">SUBSEQUENT EVENTS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl" xml:lang="en-US">Cash and Cash Equivalents</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl" xml:lang="en-US">Inventories and Cost of Sales</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy" xlink:label="us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy" xlink:to="us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_lbl" xml:lang="en-US">Allowance for Doubtful Accounts</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl" xml:lang="en-US">Property, Equipment, Leaseholds and Intangible Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" xml:lang="en-US">Impairment of Long-Lived Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_lbl" xml:lang="en-US">Foreign Currency</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl" xml:lang="en-US">Revenue Recognition</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockIssuedInExchangeForServicesPolicyTextBlock" xlink:label="FSI_StockIssuedInExchangeForServicesPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockIssuedInExchangeForServicesPolicyTextBlock" xlink:to="FSI_StockIssuedInExchangeForServicesPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StockIssuedInExchangeForServicesPolicyTextBlock_lbl" xml:lang="en-US">Stock Issued in Exchange for Services</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CompensationRelatedCostsPolicyTextBlock" xlink:label="us-gaap_CompensationRelatedCostsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CompensationRelatedCostsPolicyTextBlock" xlink:to="us-gaap_CompensationRelatedCostsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CompensationRelatedCostsPolicyTextBlock_lbl" xml:lang="en-US">Stock-based Compensation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:to="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock_lbl" xml:lang="en-US">Other Comprehensive Income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerSharePolicyTextBlock" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock_lbl" xml:lang="en-US">Income Per Share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UseOfEstimates_lbl" xml:lang="en-US">Use of Estimates</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy_lbl" xml:lang="en-US">Fair Value of Financial Instruments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesPolicyTextBlock_lbl" xml:lang="en-US">Contingencies</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl" xml:lang="en-US">Income Taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="us-gaap_ConcentrationRiskCreditRisk" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskCreditRisk" xlink:to="us-gaap_ConcentrationRiskCreditRisk_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskCreditRisk_lbl" xml:lang="en-US">Risk Management</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsPolicy" xlink:label="us-gaap_EquityMethodInvestmentsPolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentsPolicy" xlink:to="us-gaap_EquityMethodInvestmentsPolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentsPolicy_lbl" xml:lang="en-US">Equity Method Investment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy" xlink:label="us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy" xlink:to="us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy_lbl" xml:lang="en-US">Goodwill and intangible assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl" xml:lang="en-US">Recent Accounting Pronouncements</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfMethodOfDepreciationTableTextBlock" xlink:label="FSI_ScheduleOfMethodOfDepreciationTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfMethodOfDepreciationTableTextBlock" xlink:to="FSI_ScheduleOfMethodOfDepreciationTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ScheduleOfMethodOfDepreciationTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF METHOD OF DEPRECIATION</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock" xlink:label="FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock" xlink:to="FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_lbl" xml:lang="en-US">SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF UNDISCOUNTED RENT PAYMENTS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:label="us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:to="us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF ACCOUNTS RECEIVABLE</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF INVENTORIES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xml:lang="en-US">SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF PATENTS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock" xlink:label="us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock" xlink:to="us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock" xlink:label="FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock" xlink:to="FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfLongTermDepositsTableTextBlock" xlink:label="FSI_ScheduleOfLongTermDepositsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfLongTermDepositsTableTextBlock" xlink:to="FSI_ScheduleOfLongTermDepositsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ScheduleOfLongTermDepositsTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF LONG TERM DEPOSITS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsTextBlock" xlink:label="us-gaap_EquityMethodInvestmentsTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentsTextBlock" xlink:to="us-gaap_EquityMethodInvestmentsTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentsTextBlock_lbl" xml:lang="en-US">SCHEDULE OF EQUITY METHOD INVESTMENT</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnInvestmentsTextBlock" xlink:label="us-gaap_GainLossOnInvestmentsTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnInvestmentsTextBlock" xlink:to="us-gaap_GainLossOnInvestmentsTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnInvestmentsTextBlock_lbl" xml:lang="en-US">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" xlink:label="FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" xlink:to="FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_lbl" xml:lang="en-US">SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTable" xlink:label="us-gaap_ScheduleOfShortTermDebtTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShortTermDebtTable" xlink:to="us-gaap_ScheduleOfShortTermDebtTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShortTermDebtTable_lbl" xml:lang="en-US">Schedule of Short-term Debt [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtLineItems" xlink:label="us-gaap_ShortTermDebtLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermDebtLineItems" xlink:to="us-gaap_ShortTermDebtLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShortTermDebtLineItems_lbl" xml:lang="en-US">Short-term Debt [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF INTEREST LOAN REPAYMENT</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfLoanCovenantsTableTextBlock" xlink:label="FSI_ScheduleOfLoanCovenantsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfLoanCovenantsTableTextBlock" xlink:to="FSI_ScheduleOfLoanCovenantsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ScheduleOfLoanCovenantsTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF LOAN COVENANTS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:to="us-gaap_ScheduleOfDebtInstrumentsTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock_lbl" xml:lang="en-US">SCHEDULE OF OUTSTANDING BALANCE LOAN</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF RECONCILIATION OF INCOME TAXES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES)</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock" xlink:label="FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock" xlink:to="FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl" xml:lang="en-US">SCHEDULE OF ANTI-DILUTIVE OPTIONS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF STOCK OPTION ACTIVITIES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfDistributionsTableTextBlock" xlink:label="FSI_ScheduleOfDistributionsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfDistributionsTableTextBlock" xlink:to="FSI_ScheduleOfDistributionsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ScheduleOfDistributionsTableTextBlock_lbl" xml:lang="en-US">SCHEDULE OF DISTRIBUTIONS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:to="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_lbl" xml:lang="en-US">SCHEDULE OF REPORTABLE SEGMENTS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:label="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:to="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_lbl" xml:lang="en-US">SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock" xlink:label="us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock" xlink:to="us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_lbl" xml:lang="en-US">SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" xlink:label="us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" xlink:to="us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_lbl" xml:lang="en-US">Subsidiary company ownership interest rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xml:lang="en-US">Purchase price</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DepreciationMethodUsedAndAnnualRate" xlink:label="FSI_DepreciationMethodUsedAndAnnualRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DepreciationMethodUsedAndAnnualRate" xlink:to="FSI_DepreciationMethodUsedAndAnnualRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_DepreciationMethodUsedAndAnnualRate_lbl" xml:lang="en-US">Depreciation method used and annual rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="us-gaap_ScheduleOfProductInformationTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfProductInformationTable" xlink:to="us-gaap_ScheduleOfProductInformationTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfProductInformationTable_lbl" xml:lang="en-US">Schedule of Product Information [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProductInformationLineItems" xlink:label="us-gaap_ProductInformationLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductInformationLineItems" xlink:to="us-gaap_ProductInformationLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductInformationLineItems_lbl" xml:lang="en-US">Product Information [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_2_lbl" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CostOfGoodsAndServicesSold_2_lbl" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ConcentrationRiskThresholdPercentage" xlink:label="FSI_ConcentrationRiskThresholdPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ConcentrationRiskThresholdPercentage" xlink:to="FSI_ConcentrationRiskThresholdPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ConcentrationRiskThresholdPercentage_lbl" xml:lang="en-US">[custom:ConcentrationRiskThresholdPercentage]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="us-gaap_AccountsReceivableNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNet" xlink:to="us-gaap_AccountsReceivableNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableNet_lbl" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities" xlink:label="us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities" xlink:to="us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities_lbl" xml:lang="en-US">Equity Method Investment, Description of Principal Activities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DisclosureLeasesAbstract" xlink:to="FSI_DisclosureLeasesAbstract_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_DisclosureLeasesAbstract_2_lbl" xml:lang="en-US">Summary Of Right-of-use Asset And Lease Liability</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_2_lbl" xml:lang="en-US">Right of Use Assets Ending Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OperatingLeaseAssetsAddition" xlink:label="FSI_OperatingLeaseAssetsAddition" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeaseAssetsAddition" xlink:to="FSI_OperatingLeaseAssetsAddition_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_OperatingLeaseAssetsAddition_lbl" xml:lang="en-US">Addition</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OperatingLeasesAssetsTermination" xlink:label="FSI_OperatingLeasesAssetsTermination" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeasesAssetsTermination" xlink:to="FSI_OperatingLeasesAssetsTermination_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_OperatingLeasesAssetsTermination_lbl" xml:lang="en-US">Termination</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_lbl" xml:lang="en-US">Depreciation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_3_lbl" xml:lang="en-US">Right of Use Assets Ending Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xml:lang="en-US">Lease Liability Ending Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OperatingLeasesLiabilityAddition" xlink:label="FSI_OperatingLeasesLiabilityAddition" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeasesLiabilityAddition" xlink:to="FSI_OperatingLeasesLiabilityAddition_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_OperatingLeasesLiabilityAddition_lbl" xml:lang="en-US">Addition</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OperatingLeasesLiabilityTermination" xlink:label="FSI_OperatingLeasesLiabilityTermination" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeasesLiabilityTermination" xlink:to="FSI_OperatingLeasesLiabilityTermination_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_OperatingLeasesLiabilityTermination_lbl" xml:lang="en-US">Termination</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LeaseInterestExpense" xlink:label="FSI_LeaseInterestExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LeaseInterestExpense" xlink:to="FSI_LeaseInterestExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_LeaseInterestExpense_lbl" xml:lang="en-US">Lease interest expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_OperatingLeasePayments_lbl" xml:lang="en-US">Payments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_OperatingLeaseLiability_2_lbl" xml:lang="en-US">Lease Liability Ending Balance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_2_lbl" xml:lang="en-US">Short-term portion</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_2_lbl" xml:lang="en-US">Long-term portion</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiability_3_lbl" xml:lang="en-US">Total</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DisclosureLeasesAbstract" xlink:to="FSI_DisclosureLeasesAbstract_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="FSI_DisclosureLeasesAbstract_3_lbl" xml:lang="en-US">Schedule Of Undiscounted Rent Payments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xml:lang="en-US">2022</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xml:lang="en-US">2023</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xml:lang="en-US">2024</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xml:lang="en-US">2025</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xml:lang="en-US">Total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xml:lang="en-US">Impact of discounting</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_4_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseLiability_4_lbl" xml:lang="en-US">Lease liability, December 31, 2021</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseDiscountRate" xlink:label="us-gaap_LesseeOperatingLeaseDiscountRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseDiscountRate" xlink:to="us-gaap_LesseeOperatingLeaseDiscountRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseDiscountRate_lbl" xml:lang="en-US">Operating leases discount rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableGross" xlink:label="us-gaap_AccountsReceivableGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableGross" xlink:to="us-gaap_AccountsReceivableGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableGross_lbl" xml:lang="en-US">Accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:label="us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:to="us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_lbl" xml:lang="en-US">Allowances for doubtful accounts</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsAndNotesReceivableNet" xlink:label="us-gaap_AccountsAndNotesReceivableNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsAndNotesReceivableNet" xlink:to="us-gaap_AccountsAndNotesReceivableNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AccountsAndNotesReceivableNet_lbl" xml:lang="en-US">Total accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryFinishedGoods" xlink:label="us-gaap_InventoryFinishedGoods" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoods" xlink:to="us-gaap_InventoryFinishedGoods_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryFinishedGoods_lbl" xml:lang="en-US">Completed goods</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryWorkInProcess" xlink:label="us-gaap_InventoryWorkInProcess" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcess" xlink:to="us-gaap_InventoryWorkInProcess_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryWorkInProcess_lbl" xml:lang="en-US">Work in progress</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryRawMaterialsAndSupplies" xlink:label="us-gaap_InventoryRawMaterialsAndSupplies" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterialsAndSupplies" xlink:to="us-gaap_InventoryRawMaterialsAndSupplies_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryRawMaterialsAndSupplies_lbl" xml:lang="en-US">Raw materials and supplies</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_InventoryNet_2_lbl" xml:lang="en-US">&#160;Total inventory&#160;</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xml:lang="en-US">Cost</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xml:lang="en-US">Accumulated Depreciation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_2_lbl" xml:lang="en-US">Property, Plant and Equipment, Net, Total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Depreciation" xlink:label="us-gaap_Depreciation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Depreciation" xlink:to="us-gaap_Depreciation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Depreciation_lbl" xml:lang="en-US">Depreciation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AreaOfLand" xlink:to="us-gaap_AreaOfLand_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AreaOfLand_lbl" xml:lang="en-US">Area of land</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfMachineryAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfMachineryAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleOfMachineryAndEquipment_lbl" xml:lang="en-US">Proceed for disposal</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainOnInvestments" xlink:label="FSI_GainOnInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainOnInvestments" xlink:to="FSI_GainOnInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_GainOnInvestments_lbl" xml:lang="en-US">Recognized gains</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_2_lbl" xml:lang="en-US">Accumulated depreciation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_3_lbl" xml:lang="en-US">Gain on disposal</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedPatentsGross" xlink:label="us-gaap_FiniteLivedPatentsGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedPatentsGross" xlink:to="us-gaap_FiniteLivedPatentsGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedPatentsGross_lbl" xml:lang="en-US">Patents, Cost</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xml:lang="en-US">Accumulated Amortization</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xml:lang="en-US">Patents, Net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xml:lang="en-US">2022</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Goodwill_2_lbl" xml:lang="en-US">Goodwill</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" xml:lang="en-US">Indefinite Lived Intangible Asset</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_2_lbl" xml:lang="en-US">Beginning balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xml:lang="en-US">Amortization</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_3_lbl" xml:lang="en-US">Ending balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_IncreaseInCurrencyConversion" xlink:label="FSI_IncreaseInCurrencyConversion" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_IncreaseInCurrencyConversion" xlink:to="FSI_IncreaseInCurrencyConversion_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_IncreaseInCurrencyConversion_lbl" xml:lang="en-US">Increase in currency conversion</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareTable" xlink:label="us-gaap_ImpairmentEffectsOnEarningsPerShareTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentEffectsOnEarningsPerShareTable" xlink:to="us-gaap_ImpairmentEffectsOnEarningsPerShareTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ImpairmentEffectsOnEarningsPerShareTable_lbl" xml:lang="en-US">Impairment Effects on Earnings Per Share [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:label="us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_lbl" xml:lang="en-US">Impairment Effects on Earnings Per Share [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xml:lang="en-US">2023</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xml:lang="en-US">2024</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" xml:lang="en-US">2025</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl" xml:lang="en-US">2026</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xml:lang="en-US">Estimated useful life</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DisclosureLongTermDepositsAbstract" xlink:to="FSI_DisclosureLongTermDepositsAbstract_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_DisclosureLongTermDepositsAbstract_2_lbl" xml:lang="en-US">Schedule Of Long Term Deposits</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepositsAssetsNoncurrent" xlink:to="us-gaap_DepositsAssetsNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DepositsAssetsNoncurrent_2_lbl" xml:lang="en-US">Long term deposits</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestments" xlink:to="us-gaap_EquityMethodInvestments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_EquityMethodInvestments_2_lbl" xml:lang="en-US">Balance, Beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EquityMethodInvestmentReturnOfEquity" xlink:label="FSI_EquityMethodInvestmentReturnOfEquity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EquityMethodInvestmentReturnOfEquity" xlink:to="FSI_EquityMethodInvestmentReturnOfEquity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EquityMethodInvestmentReturnOfEquity_lbl" xml:lang="en-US">Return of equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:label="us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:to="us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal_lbl" xml:lang="en-US">Gain in equity method investment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestments" xlink:to="us-gaap_EquityMethodInvestments_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_EquityMethodInvestments_3_lbl" xml:lang="en-US">Balance, Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InvestmentEliminatedUponConsolidation" xlink:label="FSI_InvestmentEliminatedUponConsolidation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InvestmentEliminatedUponConsolidation" xlink:to="FSI_InvestmentEliminatedUponConsolidation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_InvestmentEliminatedUponConsolidation_lbl" xml:lang="en-US">Investment eliminated upon consolidation</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_AdditionalPayment" xlink:label="FSI_AdditionalPayment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_AdditionalPayment" xlink:to="FSI_AdditionalPayment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_AdditionalPayment_lbl" xml:lang="en-US">Additional payment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AcquisitionCosts" xlink:label="us-gaap_AcquisitionCosts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AcquisitionCosts" xlink:to="us-gaap_AcquisitionCosts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AcquisitionCosts_lbl" xml:lang="en-US">Acquisition</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainsLossesOnSalesOfInvestmentRealEstate" xlink:label="us-gaap_GainsLossesOnSalesOfInvestmentRealEstate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainsLossesOnSalesOfInvestmentRealEstate" xlink:to="us-gaap_GainsLossesOnSalesOfInvestmentRealEstate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainsLossesOnSalesOfInvestmentRealEstate_lbl" xml:lang="en-US">Net sales</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_RealizedInvestmentGainsLossesNet" xlink:label="FSI_RealizedInvestmentGainsLossesNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_RealizedInvestmentGainsLossesNet" xlink:to="FSI_RealizedInvestmentGainsLossesNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_RealizedInvestmentGainsLossesNet_lbl" xml:lang="en-US">Net income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RealizedInvestmentGainsLosses" xlink:label="us-gaap_RealizedInvestmentGainsLosses" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RealizedInvestmentGainsLosses" xlink:to="us-gaap_RealizedInvestmentGainsLosses_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RealizedInvestmentGainsLosses_lbl" xml:lang="en-US">Gross profit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl" xml:lang="en-US">Assets acquired: Cash</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_lbl" xml:lang="en-US">Assets acquired:Building</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_lbl" xml:lang="en-US">Assets acquired: Land</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_lbl" xml:lang="en-US">Liabilities assumed: Accounts payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt_lbl" xml:lang="en-US">Liabilities assumed: Long term debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_lbl" xml:lang="en-US">Liabilities assumed: Deferred income tax liability</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_lbl" xml:lang="en-US">Total identifiable net assets:</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainOnAcquisitionOfEnpRealty" xlink:label="FSI_GainOnAcquisitionOfEnpRealty" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainOnAcquisitionOfEnpRealty" xlink:to="FSI_GainOnAcquisitionOfEnpRealty_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_GainOnAcquisitionOfEnpRealty_lbl" xml:lang="en-US">Gain on acquisition of ENP Realty</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage_lbl" xml:lang="en-US">Ownership interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromContributionsFromAffiliates" xlink:label="us-gaap_ProceedsFromContributionsFromAffiliates" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromContributionsFromAffiliates" xlink:to="us-gaap_ProceedsFromContributionsFromAffiliates_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromContributionsFromAffiliates_lbl" xml:lang="en-US">Proceeds from investment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_lbl" xml:lang="en-US">Non-controlling interests</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" xlink:label="us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" xlink:to="us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_lbl" xml:lang="en-US">Investment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear" xlink:label="us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear" xlink:to="us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear_lbl" xml:lang="en-US">Debt conversion due date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentTerm" xlink:label="us-gaap_DebtInstrumentTerm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentTerm" xlink:to="us-gaap_DebtInstrumentTerm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentTerm_lbl" xml:lang="en-US">Debt Instrument, Term</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_2_lbl" xml:lang="en-US">Non-voting shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharePrice" xlink:to="us-gaap_SharePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharePrice_lbl" xml:lang="en-US">Share price</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedCashNoncurrent" xlink:label="us-gaap_RestrictedCashNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedCashNoncurrent" xlink:to="us-gaap_RestrictedCashNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RestrictedCashNoncurrent_lbl" xml:lang="en-US">Restricted cash, released upon reaching milestone</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration" xlink:label="us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration" xlink:to="us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration_lbl" xml:lang="en-US">Contigent consideration of additional payment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" xml:lang="en-US">Revenue</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNet" xlink:to="us-gaap_AccountsReceivableNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccountsReceivableNet_2_lbl" xml:lang="en-US">Accounts Receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LineOfCreditFacilityTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityTable_lbl" xml:lang="en-US">Line of Credit Facility [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityLineItems_lbl" xml:lang="en-US">Line of Credit Facility [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xml:lang="en-US">Aggregate amount of revolving line of credit</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EligiblePercentageOfDomesticAccountsReceivable" xlink:label="FSI_EligiblePercentageOfDomesticAccountsReceivable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EligiblePercentageOfDomesticAccountsReceivable" xlink:to="FSI_EligiblePercentageOfDomesticAccountsReceivable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EligiblePercentageOfDomesticAccountsReceivable_lbl" xml:lang="en-US">Eligible percentage of domestic accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PercentageOfForeignAccountsReceivableOfInventory" xlink:label="FSI_PercentageOfForeignAccountsReceivableOfInventory" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PercentageOfForeignAccountsReceivableOfInventory" xlink:to="FSI_PercentageOfForeignAccountsReceivableOfInventory_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_PercentageOfForeignAccountsReceivableOfInventory_lbl" xml:lang="en-US">Percentage of foreign accounts receivable of inventory</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:label="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:to="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod_lbl" xml:lang="en-US">Debt effective rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd" xlink:label="us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd" xlink:to="us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd_lbl" xml:lang="en-US">Annual interest rate of loan</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCredit" xlink:to="us-gaap_LineOfCredit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCredit_lbl" xml:lang="en-US">Revolving line of credit</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LoanGuaranteedRate" xlink:label="FSI_LoanGuaranteedRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LoanGuaranteedRate" xlink:to="FSI_LoanGuaranteedRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_LoanGuaranteedRate_lbl" xml:lang="en-US">Loan guaranteed rate</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LinesOfCreditCurrent" xlink:to="us-gaap_LinesOfCreditCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LinesOfCreditCurrent_2_lbl" xml:lang="en-US">Line of Credit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="us-gaap_ShortTermBorrowings" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermBorrowings" xlink:to="us-gaap_ShortTermBorrowings_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShortTermBorrowings_lbl" xml:lang="en-US">Short-term borrowings</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xml:lang="en-US">Debt instrument interest rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl" xml:lang="en-US">2022</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl" xml:lang="en-US">2023</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl" xml:lang="en-US">2025</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl" xml:lang="en-US">2025</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_LongTermDebt_lbl" xml:lang="en-US">Balance, January 1</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromLoans" xlink:label="us-gaap_ProceedsFromLoans" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromLoans" xlink:to="us-gaap_ProceedsFromLoans_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromLoans_lbl" xml:lang="en-US">Plus: Proceeds from loans</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ProceedsFromLoanAcquiredWithAcquisition" xlink:label="FSI_ProceedsFromLoanAcquiredWithAcquisition" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ProceedsFromLoanAcquiredWithAcquisition" xlink:to="FSI_ProceedsFromLoanAcquiredWithAcquisition_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ProceedsFromLoanAcquiredWithAcquisition_lbl" xml:lang="en-US">Plus: Loan acquired with acquisition of ENP Realty</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfBankDebt" xlink:label="us-gaap_RepaymentsOfBankDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfBankDebt" xlink:to="us-gaap_RepaymentsOfBankDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_RepaymentsOfBankDebt_lbl" xml:lang="en-US">Less: Forgiveness on PPP loans</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForProceedsFromDepositOnLoan" xlink:label="us-gaap_PaymentsForProceedsFromDepositOnLoan" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForProceedsFromDepositOnLoan" xlink:to="us-gaap_PaymentsForProceedsFromDepositOnLoan_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsForProceedsFromDepositOnLoan_lbl" xml:lang="en-US">Less: Payments on loan</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_LongTermDebt_2_lbl" xml:lang="en-US">Balance, December 31</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_lbl" xml:lang="en-US">Schedule of Defined Benefit Plans Disclosures [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="us-gaap_DefinedBenefitPlanDisclosureLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="us-gaap_DefinedBenefitPlanDisclosureLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedBenefitPlanDisclosureLineItems_lbl" xml:lang="en-US">Defined Benefit Plan Disclosure [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebt_3_lbl" xml:lang="en-US">Long-term Debt</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_LongTermDebtCurrent_2_lbl" xml:lang="en-US">Less: current portion</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtNoncurrent_2_lbl" xml:lang="en-US">Long term balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFaceAmount" xlink:to="us-gaap_DebtInstrumentFaceAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentFaceAmount_lbl" xml:lang="en-US">Promissory note</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentTerm" xlink:to="us-gaap_DebtInstrumentTerm_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DebtInstrumentTerm_2_lbl" xml:lang="en-US">Debt instrument, term</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaymentOfMonthlyInstallmentsInterestRate" xlink:label="FSI_PaymentOfMonthlyInstallmentsInterestRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PaymentOfMonthlyInstallmentsInterestRate" xlink:to="FSI_PaymentOfMonthlyInstallmentsInterestRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_PaymentOfMonthlyInstallmentsInterestRate_lbl" xml:lang="en-US">Payment of monthly installments interest rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentPeriodicPayment" xlink:to="us-gaap_DebtInstrumentPeriodicPayment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentPeriodicPayment_lbl" xml:lang="en-US">Debt instrument periodic payment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage_2_lbl" xml:lang="en-US">Ownership interest percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestExpenseDebt" xlink:label="us-gaap_InterestExpenseDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpenseDebt" xlink:to="us-gaap_InterestExpenseDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InterestExpenseDebt_lbl" xml:lang="en-US">Interest expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_2_lbl" xml:lang="en-US">Debt instrument, interest rate, stated percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDefaultLongtermDebtAmount" xlink:label="us-gaap_DebtDefaultLongtermDebtAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDefaultLongtermDebtAmount" xlink:to="us-gaap_DebtDefaultLongtermDebtAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDefaultLongtermDebtAmount_lbl" xml:lang="en-US">Debt balance owing</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConvertibleNotesPayable" xlink:label="us-gaap_ConvertibleNotesPayable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConvertibleNotesPayable" xlink:to="us-gaap_ConvertibleNotesPayable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConvertibleNotesPayable_lbl" xml:lang="en-US">Convertible note payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear" xlink:label="us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear" xlink:to="us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear_lbl" xml:lang="en-US">Debt convertible due date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentRate" xlink:label="us-gaap_DebtConversionConvertedInstrumentRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtConversionConvertedInstrumentRate" xlink:to="us-gaap_DebtConversionConvertedInstrumentRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtConversionConvertedInstrumentRate_lbl" xml:lang="en-US">Debt conversion ratio</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentSharesIssued1" xlink:label="us-gaap_DebtConversionConvertedInstrumentSharesIssued1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtConversionConvertedInstrumentSharesIssued1" xlink:to="us-gaap_DebtConversionConvertedInstrumentSharesIssued1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtConversionConvertedInstrumentSharesIssued1_lbl" xml:lang="en-US">Debt converted to shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:label="us-gaap_DebtConversionConvertedInstrumentAmount1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:to="us-gaap_DebtConversionConvertedInstrumentAmount1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtConversionConvertedInstrumentAmount1_lbl" xml:lang="en-US">Debt converted to shares, amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentIncreaseAccruedInterest" xlink:label="us-gaap_DebtInstrumentIncreaseAccruedInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentIncreaseAccruedInterest" xlink:to="us-gaap_DebtInstrumentIncreaseAccruedInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentIncreaseAccruedInterest_lbl" xml:lang="en-US">Accrued interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" xml:lang="en-US">Current tax, federal</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" xml:lang="en-US">Current tax, state</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="us-gaap_CurrentForeignTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentForeignTaxExpenseBenefit" xlink:to="us-gaap_CurrentForeignTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentForeignTaxExpenseBenefit_lbl" xml:lang="en-US">Current tax, foreign</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_2_lbl" xml:lang="en-US">Current tax, total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred income tax, federal</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred income tax, state</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredForeignIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredForeignIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred income tax, foreign</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_3_lbl" xml:lang="en-US">Deferred income tax, total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Total</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_2_lbl" xml:lang="en-US">Income before tax</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xml:lang="en-US">US statutory tax rates</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ExpectedIncomeTaxRecovery" xlink:label="FSI_ExpectedIncomeTaxRecovery" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ExpectedIncomeTaxRecovery" xlink:to="FSI_ExpectedIncomeTaxRecovery_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ExpectedIncomeTaxRecovery_lbl" xml:lang="en-US">Expected income tax</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:to="us-gaap_IncomeTaxReconciliationNondeductibleExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpense_lbl" xml:lang="en-US">Non-deductible items</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="us-gaap_IncomeTaxReconciliationOtherAdjustments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:to="us-gaap_IncomeTaxReconciliationOtherAdjustments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxReconciliationOtherAdjustments_lbl" xml:lang="en-US">Change in estimates and other</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate" xlink:label="us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate" xlink:to="us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate_lbl" xml:lang="en-US">Change in enacted tax rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:to="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential_lbl" xml:lang="en-US">Foreign tax rate difference</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl" xml:lang="en-US">Change in valuation allowance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxExpenseBenefit_2_lbl" xml:lang="en-US">Total income tax expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_3_lbl" xml:lang="en-US">Current income tax expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_4_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_4_lbl" xml:lang="en-US">Deferred tax expense (recovery)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="us-gaap_OperatingLossCarryforwardsTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLossCarryforwardsTable" xlink:to="us-gaap_OperatingLossCarryforwardsTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLossCarryforwardsTable_lbl" xml:lang="en-US">Operating Loss Carryforwards [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="us-gaap_OperatingLossCarryforwardsLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLossCarryforwardsLineItems" xlink:to="us-gaap_OperatingLossCarryforwardsLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLossCarryforwardsLineItems_lbl" xml:lang="en-US">Operating Loss Carryforwards [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_lbl" xml:lang="en-US">Non capital loss carryforwards</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:label="us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:to="us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_lbl" xml:lang="en-US">Intangible assets</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetsPropertyPlantsAndEquipment" xlink:label="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment" xlink:to="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment_lbl" xml:lang="en-US">Property, equipment and leaseholds</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsDerivativeInstruments" xlink:label="us-gaap_DeferredTaxAssetsDerivativeInstruments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsDerivativeInstruments" xlink:to="us-gaap_DeferredTaxAssetsDerivativeInstruments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsDerivativeInstruments_lbl" xml:lang="en-US">Financial instruments</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetsLiabilitiesGross" xlink:label="FSI_DeferredTaxAssetsLiabilitiesGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetsLiabilitiesGross" xlink:to="FSI_DeferredTaxAssetsLiabilitiesGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_DeferredTaxAssetsLiabilitiesGross_lbl" xml:lang="en-US">Deferred tax asset (liability)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xml:lang="en-US">Valuation Allowance</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetNet" xlink:label="FSI_DeferredTaxAssetNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetNet" xlink:to="FSI_DeferredTaxAssetNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_DeferredTaxAssetNet_lbl" xml:lang="en-US">Net Deferred tax asset</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsInvestments" xlink:label="us-gaap_DeferredTaxAssetsInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsInvestments" xlink:to="us-gaap_DeferredTaxAssetsInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxAssetsInvestments_lbl" xml:lang="en-US">Investments</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne" xlink:label="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne" xlink:to="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne_lbl" xml:lang="en-US">Property, equipment and leaseholds</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetNotRecognized" xlink:label="FSI_DeferredTaxAssetNotRecognized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetNotRecognized" xlink:to="FSI_DeferredTaxAssetNotRecognized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_DeferredTaxAssetNotRecognized_lbl" xml:lang="en-US">Deferred tax asset not recognized</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetLiabilitiesNet" xlink:label="FSI_DeferredTaxAssetLiabilitiesNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetLiabilitiesNet" xlink:to="FSI_DeferredTaxAssetLiabilitiesNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_DeferredTaxAssetLiabilitiesNet_lbl" xml:lang="en-US">Net deferred tax asset (liability)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="us-gaap_OperatingLossCarryforwards" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLossCarryforwards" xlink:to="us-gaap_OperatingLossCarryforwards_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLossCarryforwards_lbl" xml:lang="en-US">Total</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLossCarryforwards" xlink:to="us-gaap_OperatingLossCarryforwards_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLossCarryforwards_2_lbl" xml:lang="en-US">Operating loss carryforwards</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_2_lbl" xml:lang="en-US">Basic</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2_lbl" xml:lang="en-US">Diluted</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasicAndDiluted" xlink:to="us-gaap_EarningsPerShareBasicAndDiluted_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareBasicAndDiluted_2_lbl" xml:lang="en-US">Basic and diluted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xml:lang="en-US">Anti-dilutive options</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xml:lang="en-US">Preferred stock, shares issued</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xml:lang="en-US">Preferred stock, shares outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Number of shares, Beginning Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_lbl" xml:lang="en-US">Exercise price per share, Beginning Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted average exercise price, Beginning Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xml:lang="en-US">Number of shares, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_lbl" xml:lang="en-US">Exercise price per share, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted average exercise price, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl" xml:lang="en-US">Number of shares, Cancelled or expired</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_lbl" xml:lang="en-US">Exercise price per share, Cancelled or expired</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted average exercise price, Cancelled or expired</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US">Number of shares, Exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_lbl" xml:lang="en-US">Exercise price per share, Exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted average exercise price, Exercised</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2_lbl" xml:lang="en-US">Number of shares, Ending Balance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_2_lbl" xml:lang="en-US">Exercise price per share, Ending Balance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2_lbl" xml:lang="en-US">Weighted average exercise price, Ending Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" xml:lang="en-US">Number of shares Exercisable, Ending Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_lbl" xml:lang="en-US">Exercise price per share Exercisable, Ending Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_lbl" xml:lang="en-US">Weighted average exercise price Exercisable, Ending Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl" xml:lang="en-US">Expected life - years</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl" xml:lang="en-US">Interest rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl" xml:lang="en-US">Volatility</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted average fair value of options granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:label="us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:to="us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable_lbl" xml:lang="en-US">Schedule of Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits, by Title of Individual and by Type of Deferred Compensation [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems_lbl" xml:lang="en-US">Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_lbl" xml:lang="en-US">Options granted percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl" xml:lang="en-US">Options maximum granted term</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" xml:lang="en-US">Weighted-average remaining contractual life</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_2_lbl" xml:lang="en-US">Stock options granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockOptionPlanExpense" xlink:label="us-gaap_StockOptionPlanExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockOptionPlanExpense" xlink:to="us-gaap_StockOptionPlanExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockOptionPlanExpense_lbl" xml:lang="en-US">Stock option expense</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_AdditionalExpensesDueToOptionsGranted" xlink:label="FSI_AdditionalExpensesDueToOptionsGranted" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_AdditionalExpensesDueToOptionsGranted" xlink:to="FSI_AdditionalExpensesDueToOptionsGranted_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_AdditionalExpensesDueToOptionsGranted_lbl" xml:lang="en-US">Additional expenses due to options granted</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_2_lbl" xml:lang="en-US">Stock options exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" xml:lang="en-US">Compensation expense related to non-vested awards</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xml:lang="en-US">Compensation expense related to non-vested awards, weighted average period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_lbl" xml:lang="en-US">Aggregate intrinsic value of vested options</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_lbl" xml:lang="en-US">Aggregate intrinsic value of vested options exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OffsettingAssetsTable" xlink:label="us-gaap_OffsettingAssetsTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OffsettingAssetsTable" xlink:to="us-gaap_OffsettingAssetsTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OffsettingAssetsTable_lbl" xml:lang="en-US">Offsetting Assets [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OffsettingAssetsLineItems" xlink:label="us-gaap_OffsettingAssetsLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OffsettingAssetsLineItems" xlink:to="us-gaap_OffsettingAssetsLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OffsettingAssetsLineItems_lbl" xml:lang="en-US">Offsetting Assets [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:label="us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable_lbl" xml:lang="en-US">Consolidation, Less than Wholly Owned Subsidiary, Parent Ownership Interest, Effects of Changes, Net [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:label="us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems_lbl" xml:lang="en-US">Consolidation, Less than Wholly Owned Subsidiary, Parent Ownership Interest, Effects of Changes, Net [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterest" xlink:to="us-gaap_MinorityInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_MinorityInterest_2_lbl" xml:lang="en-US">Distribution to noncontrolling interests, Beginning balance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:to="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:label="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_2_lbl" xml:lang="en-US">Distribution</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_2_lbl" xml:lang="en-US">Non-controlling interest share of income</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterest" xlink:to="us-gaap_MinorityInterest_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_MinorityInterest_3_lbl" xml:lang="en-US">Distribution to noncontrolling interests, Ending balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByParent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent_lbl" xml:lang="en-US">Related party owner ship percentage</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToMinorityShareholders" xlink:to="us-gaap_PaymentsToMinorityShareholders_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToMinorityShareholders_2_lbl" xml:lang="en-US">Partnership distribution to non-controlling interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage_3_lbl" xml:lang="en-US">Equity Method Investment, Ownership Percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:label="us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:to="us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_lbl" xml:lang="en-US">Revenue from External Customers by Products and Services [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:label="us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_lbl" xml:lang="en-US">Revenue from External Customer [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpense" xlink:to="us-gaap_InterestExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InterestExpense_lbl" xml:lang="en-US">Interest expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationNonproduction" xlink:label="us-gaap_DepreciationNonproduction" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationNonproduction" xlink:to="us-gaap_DepreciationNonproduction_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DepreciationNonproduction_lbl" xml:lang="en-US">Depreciation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_3_lbl" xml:lang="en-US">Current and deferred income tax expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProfitLoss_3_lbl" xml:lang="en-US">Segment profit</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_Segmentassets" xlink:label="FSI_Segmentassets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_Segmentassets" xlink:to="FSI_Segmentassets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_Segmentassets_lbl" xml:lang="en-US">Segment assets</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_2_lbl" xml:lang="en-US">Expenditures for segment assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_lbl" xml:lang="en-US">Schedule of Revenues from External Customers and Long-Lived Assets [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:to="us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_lbl" xml:lang="en-US">Revenues from External Customers and Long-Lived Assets [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncurrentAssets" xlink:label="us-gaap_NoncurrentAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncurrentAssets" xlink:to="us-gaap_NoncurrentAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncurrentAssets_lbl" xml:lang="en-US">Long-lived assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:label="us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:to="us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_lbl" xml:lang="en-US">Schedule of Revenue by Major Customers, by Reporting Segments [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EntityWideRevenueMajorCustomerLineItems" xlink:label="us-gaap_EntityWideRevenueMajorCustomerLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EntityWideRevenueMajorCustomerLineItems" xlink:to="us-gaap_EntityWideRevenueMajorCustomerLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EntityWideRevenueMajorCustomerLineItems_lbl" xml:lang="en-US">Revenue, Major Customer [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNet" xlink:to="us-gaap_AccountsReceivableNet_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccountsReceivableNet_3_lbl" xml:lang="en-US">Accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockOptionExercisePercent" xlink:label="FSI_StockOptionExercisePercent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockOptionExercisePercent" xlink:to="FSI_StockOptionExercisePercent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StockOptionExercisePercent_lbl" xml:lang="en-US">Accounted risk percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsequentEventTable_lbl" xml:lang="en-US">Subsequent Event [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_SubsequentEventLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsequentEventLineItems_lbl" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_IncreaseInCurrencyConversion" xlink:to="FSI_IncreaseInCurrencyConversion_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_IncreaseInCurrencyConversion_doc" xml:lang="en-US">Increase in currency conversion.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_FiniteLivedPatentGross" xlink:to="FSI_FiniteLivedPatentGross_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_FiniteLivedPatentGross_doc" xml:lang="en-US">Finite lived patent gross.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_Consulting" xlink:to="FSI_Consulting_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_Consulting_doc" xml:lang="en-US">Consulting.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InterestExpenses" xlink:to="FSI_InterestExpenses_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_InterestExpenses_doc" xml:lang="en-US">Interest expenses.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InvestorRelationsAndTransferAgentFee" xlink:to="FSI_InvestorRelationsAndTransferAgentFee_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_InvestorRelationsAndTransferAgentFee_doc" xml:lang="en-US">Investor relations and transfer agent fee.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_Commissions" xlink:to="FSI_Commissions_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_Commissions_doc" xml:lang="en-US">Commissions.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ShippingCost" xlink:to="FSI_ShippingCost_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ShippingCost_doc" xml:lang="en-US">Shipping cost.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PppLoanForgiveness" xlink:to="FSI_PppLoanForgiveness_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_PppLoanForgiveness_doc" xml:lang="en-US">Ppp loan forgiveness.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_AppliedHoldingCorpMember" xlink:to="FSI_AppliedHoldingCorpMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_AppliedHoldingCorpMember_doc" xml:lang="en-US">Applied Holding Corp [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EquityMethodInvestmentReturnOfEquity" xlink:to="FSI_EquityMethodInvestmentReturnOfEquity_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EquityMethodInvestmentReturnOfEquity_doc" xml:lang="en-US">Return of equity.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainOnAcquisitionOfEnpRealty" xlink:to="FSI_GainOnAcquisitionOfEnpRealty_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_GainOnAcquisitionOfEnpRealty_doc" xml:lang="en-US">Gain on acquisition of ENP Realty.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InvestmentEliminatedUponConsolidation" xlink:to="FSI_InvestmentEliminatedUponConsolidation_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_InvestmentEliminatedUponConsolidation_doc" xml:lang="en-US">Investment Eliminated Upon Consolidation.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_AdditionalPayment" xlink:to="FSI_AdditionalPayment_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_AdditionalPayment_doc" xml:lang="en-US">Additional payment.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EligiblePercentageOfDomesticAccountsReceivable" xlink:to="FSI_EligiblePercentageOfDomesticAccountsReceivable_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EligiblePercentageOfDomesticAccountsReceivable_doc" xml:lang="en-US">Eligible percentage of domestic accounts receivable.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PercentageOfForeignAccountsReceivableOfInventory" xlink:to="FSI_PercentageOfForeignAccountsReceivableOfInventory_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_PercentageOfForeignAccountsReceivableOfInventory_doc" xml:lang="en-US">Percentage of foreign accounts receivable of inventory.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LeaseRightOfUseFinancing" xlink:to="FSI_LeaseRightOfUseFinancing_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_LeaseRightOfUseFinancing_doc" xml:lang="en-US">Lease right of use financing.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LoanGuaranteedRate" xlink:to="FSI_LoanGuaranteedRate_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_LoanGuaranteedRate_doc" xml:lang="en-US">Loan guaranteed rate.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_NanoChemSolutionIncMember" xlink:to="FSI_NanoChemSolutionIncMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_NanoChemSolutionIncMember_doc" xml:lang="en-US">NanoChem Solutions Inc [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainLossOnInvestment" xlink:to="FSI_GainLossOnInvestment_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_GainLossOnInvestment_doc" xml:lang="en-US">Gain loss on investment.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BadDebtExpense" xlink:to="FSI_BadDebtExpense_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_BadDebtExpense_doc" xml:lang="en-US">Bad debt expense.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PaycheckProtectionProgramLoanForgiveness" xlink:to="FSI_PaycheckProtectionProgramLoanForgiveness_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_PaycheckProtectionProgramLoanForgiveness_doc" xml:lang="en-US">Paycheck protection program loan forgiveness.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TermLoanMember" xlink:to="FSI_TermLoanMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TermLoanMember_doc" xml:lang="en-US">Term Loan [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PaymentOfMonthlyInstallmentsInterestRate" xlink:to="FSI_PaymentOfMonthlyInstallmentsInterestRate_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_PaymentOfMonthlyInstallmentsInterestRate_doc" xml:lang="en-US">Payment of monthly installments interest rate.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpInvestmentsLLCMember" xlink:to="FSI_EnpInvestmentsLLCMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EnpInvestmentsLLCMember_doc" xml:lang="en-US">Enp Investments LLC [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_MidlandBankMember" xlink:to="FSI_MidlandBankMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_MidlandBankMember_doc" xml:lang="en-US">Midland Bank [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_FordMotorCreditCompanyMember" xlink:to="FSI_FordMotorCreditCompanyMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_FordMotorCreditCompanyMember_doc" xml:lang="en-US">Ford Motor Credit Company [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PaycheckProtectionProgramMember" xlink:to="FSI_PaycheckProtectionProgramMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_PaycheckProtectionProgramMember_doc" xml:lang="en-US">Paycheck Protection Program [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustMember" xlink:to="FSI_StockYardsBankTrustMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_StockYardsBankTrustMember_doc" xml:lang="en-US">Stock Yards Bank Trust [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ProceedsFromLoanAcquiredWithAcquisition" xlink:to="FSI_ProceedsFromLoanAcquiredWithAcquisition_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ProceedsFromLoanAcquiredWithAcquisition_doc" xml:lang="en-US">Plus: Loan acquired with acquisition of ENP Realty.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ExpectedIncomeTaxRecovery" xlink:to="FSI_ExpectedIncomeTaxRecovery_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ExpectedIncomeTaxRecovery_doc" xml:lang="en-US">Expected income tax (recovery).</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment" xlink:to="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment_doc" xml:lang="en-US">Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetNotRecognized" xlink:to="FSI_DeferredTaxAssetNotRecognized_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_DeferredTaxAssetNotRecognized_doc" xml:lang="en-US">Deferred tax asset not recognized.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_doc" xml:lang="en-US">Exercise price per share, Granted.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_doc" xml:lang="en-US">Cancelled or expired, Exercise price per share.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_doc" xml:lang="en-US">Exercised, Exercise price per share.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_AdditionalExpensesDueToOptionsGranted" xlink:to="FSI_AdditionalExpensesDueToOptionsGranted_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_AdditionalExpensesDueToOptionsGranted_doc" xml:lang="en-US">Additional expenses due to options granted.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EmployeesStockOptionMember" xlink:to="FSI_EmployeesStockOptionMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EmployeesStockOptionMember_doc" xml:lang="en-US">Employees Stock Option [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ConsultantsStockOptionsMember" xlink:to="FSI_ConsultantsStockOptionsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ConsultantsStockOptionsMember_doc" xml:lang="en-US">Consultants Stock Options [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpInvestmentMember" xlink:to="FSI_EnpInvestmentMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EnpInvestmentMember_doc" xml:lang="en-US">ENP Investment [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OwnershipInterestPurchaseAgreementMember" xlink:to="FSI_OwnershipInterestPurchaseAgreementMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_OwnershipInterestPurchaseAgreementMember_doc" xml:lang="en-US">Ownership Interest Purchase Agreement [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLlcAndEnpRealtyllcMember" xlink:label="FSI_EnpInvestmentsLlcAndEnpRealtyllcMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpInvestmentsLlcAndEnpRealtyllcMember" xlink:to="FSI_EnpInvestmentsLlcAndEnpRealtyllcMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EnpInvestmentsLlcAndEnpRealtyllcMember_doc" xml:lang="en-US">ENP Investments LLC and ENP Realty, LLC [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_UnrelatedPartyMember" xlink:to="FSI_UnrelatedPartyMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_UnrelatedPartyMember_doc" xml:lang="en-US">Unrelated Party [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_Segmentassets" xlink:to="FSI_Segmentassets_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_Segmentassets_doc" xml:lang="en-US">Segment assets.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DepreciationMethodUsedAndAnnualRate" xlink:to="FSI_DepreciationMethodUsedAndAnnualRate_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_DepreciationMethodUsedAndAnnualRate_doc" xml:lang="en-US">Depreciation method used and annual rate.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BoatMember" xlink:to="FSI_BoatMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_BoatMember_doc" xml:lang="en-US">Boat [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BuildingAndImprovementsMember" xlink:to="FSI_BuildingAndImprovementsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_BuildingAndImprovementsMember_doc" xml:lang="en-US">Building and improvements [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TrailerMember" xlink:to="FSI_TrailerMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TrailerMember_doc" xml:lang="en-US">Trailer [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_RightofUseAssetMember" xlink:label="FSI_RightofUseAssetMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_RightofUseAssetMember" xlink:to="FSI_RightofUseAssetMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_RightofUseAssetMember_doc" xml:lang="en-US">Right of Use Asset [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CustomerRelationshipsENPInvestmentsMember" xlink:to="FSI_CustomerRelationshipsENPInvestmentsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_CustomerRelationshipsENPInvestmentsMember_doc" xml:lang="en-US">Customer Relationships - ENP Investments [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SoftwareENPInvestmentsMember" xlink:to="FSI_SoftwareENPInvestmentsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_SoftwareENPInvestmentsMember_doc" xml:lang="en-US">Software - ENP Investments [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ThreePrimaryCustomersMember" xlink:to="FSI_ThreePrimaryCustomersMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ThreePrimaryCustomersMember_doc" xml:lang="en-US">Three Primary Customers [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ConcentrationRiskThresholdPercentage" xlink:to="FSI_ConcentrationRiskThresholdPercentage_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ConcentrationRiskThresholdPercentage_doc" xml:lang="en-US">Concentration Risk Threshold Percentage.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CADMember" xlink:to="FSI_CADMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_CADMember_doc" xml:lang="en-US">CAD [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpnvestmentsLlcMember" xlink:to="FSI_EnpnvestmentsLlcMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EnpnvestmentsLlcMember_doc" xml:lang="en-US">ENP Investments LLC [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnPInvestmentsCorporationLLCMember" xlink:to="FSI_EnPInvestmentsCorporationLLCMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EnPInvestmentsCorporationLLCMember_doc" xml:lang="en-US">EnP Investments Limited Liability Corporation (LLC) [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TrioOpportunityCorpMember" xlink:to="FSI_TrioOpportunityCorpMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TrioOpportunityCorpMember_doc" xml:lang="en-US">Trio Opportunity Corp [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_NewAgreementMember" xlink:to="FSI_NewAgreementMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_NewAgreementMember_doc" xml:lang="en-US">New Agreement [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_HarrisBankMember" xlink:to="FSI_HarrisBankMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_HarrisBankMember_doc" xml:lang="en-US">Harris Bank [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_MidlandStatesBankMember" xlink:to="FSI_MidlandStatesBankMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_MidlandStatesBankMember_doc" xml:lang="en-US">Midland States Bank [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteWithMidlandStatesBankMember" xlink:label="FSI_PromissoryNoteWithMidlandStatesBankMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PromissoryNoteWithMidlandStatesBankMember" xlink:to="FSI_PromissoryNoteWithMidlandStatesBankMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_PromissoryNoteWithMidlandStatesBankMember_doc" xml:lang="en-US">Promissory Note With Midland States Bank [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankTwoMember" xlink:label="FSI_HarrisBankTwoMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_HarrisBankTwoMember" xlink:to="FSI_HarrisBankTwoMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_HarrisBankTwoMember_doc" xml:lang="en-US">Harris Bank [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_HarrisBankOneMember" xlink:to="FSI_HarrisBankOneMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_HarrisBankOneMember_doc" xml:lang="en-US">Harris Bank [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PaycheckProtectionProgramOneMember" xlink:to="FSI_PaycheckProtectionProgramOneMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_PaycheckProtectionProgramOneMember_doc" xml:lang="en-US">Paycheck Protection Program One</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_MidlandStatesBankOneMember" xlink:to="FSI_MidlandStatesBankOneMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_MidlandStatesBankOneMember_doc" xml:lang="en-US">Midland States Bank One [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_MidlandStatesBankTwoMember" xlink:to="FSI_MidlandStatesBankTwoMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_MidlandStatesBankTwoMember_doc" xml:lang="en-US">Midland States Bank Two [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandTwentyNineTaxYearMember" xlink:to="FSI_TwoThousandTwentyNineTaxYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandTwentyNineTaxYearMember_doc" xml:lang="en-US">2029 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyTaxYearMember" xlink:to="FSI_TwoThousandThirtyTaxYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandThirtyTaxYearMember_doc" xml:lang="en-US">2030 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyOneTaxYearMember" xlink:to="FSI_TwoThousandThirtyOneTaxYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandThirtyOneTaxYearMember_doc" xml:lang="en-US">2031 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtySevenTaxYearMember" xlink:to="FSI_TwoThousandThirtySevenTaxYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandThirtySevenTaxYearMember_doc" xml:lang="en-US">2037 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyEightTaxYearMember" xlink:to="FSI_TwoThousandThirtyEightTaxYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandThirtyEightTaxYearMember_doc" xml:lang="en-US">2038 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandFortyTaxYearMember" xlink:to="FSI_TwoThousandFortyTaxYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandFortyTaxYearMember_doc" xml:lang="en-US">2040 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyNineTaxYearMember" xlink:to="FSI_TwoThousandThirtyNineTaxYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandThirtyNineTaxYearMember_doc" xml:lang="en-US">2039 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandFortyOneTaxYearMember" xlink:to="FSI_TwoThousandFortyOneTaxYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandFortyOneTaxYearMember_doc" xml:lang="en-US">2041 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ConsultantsMember" xlink:to="FSI_ConsultantsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ConsultantsMember_doc" xml:lang="en-US">Consultants [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EmployeesMember" xlink:to="FSI_EmployeesMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EmployeesMember_doc" xml:lang="en-US">Employees [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EWCPMember" xlink:to="FSI_EWCPMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EWCPMember_doc" xml:lang="en-US">EWCP [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BCPAMember" xlink:to="FSI_BCPAMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_BCPAMember_doc" xml:lang="en-US">BCPA [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_UnitedStatesandAbroadMember" xlink:to="FSI_UnitedStatesandAbroadMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_UnitedStatesandAbroadMember_doc" xml:lang="en-US">United States and Abroad [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ThreeCustomersMember" xlink:to="FSI_ThreeCustomersMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ThreeCustomersMember_doc" xml:lang="en-US">Three Customers [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EmployeeMember" xlink:to="FSI_EmployeeMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EmployeeMember_doc" xml:lang="en-US">Employee [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeaseAssetsAddition" xlink:to="FSI_OperatingLeaseAssetsAddition_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_OperatingLeaseAssetsAddition_doc" xml:lang="en-US">Operating lease assets addition.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeasesAssetsTermination" xlink:to="FSI_OperatingLeasesAssetsTermination_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_OperatingLeasesAssetsTermination_doc" xml:lang="en-US">Operating leases assets termination.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock" xlink:to="FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock_doc" xml:lang="en-US">Schedule Of Estimated Future Amortization Expense [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LongTermDepositsTextBlock" xlink:to="FSI_LongTermDepositsTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_LongTermDepositsTextBlock_doc" xml:lang="en-US">Long Term Deposits [Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfLongTermDepositsTableTextBlock" xlink:to="FSI_ScheduleOfLongTermDepositsTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ScheduleOfLongTermDepositsTableTextBlock_doc" xml:lang="en-US">Schedule Of Long Term Deposits [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpPeruInvestmentsLlcMember" xlink:to="FSI_EnpPeruInvestmentsLlcMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EnpPeruInvestmentsLlcMember_doc" xml:lang="en-US">Enp Peru Investments Llc [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpRealtyLLCMember" xlink:to="FSI_EnpRealtyLLCMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EnpRealtyLLCMember_doc" xml:lang="en-US">Enp Realty LLC [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_FloridaBasedLLCMember" xlink:to="FSI_FloridaBasedLLCMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_FloridaBasedLLCMember_doc" xml:lang="en-US">Florida Based LLC [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LygosIncMember" xlink:to="FSI_LygosIncMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_LygosIncMember_doc" xml:lang="en-US">Lygos Inc [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainOnAcquisition" xlink:to="FSI_GainOnAcquisition_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_GainOnAcquisition_doc" xml:lang="en-US">Gain on acquisition</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_RealizedInvestmentGainsLossesNet" xlink:to="FSI_RealizedInvestmentGainsLossesNet_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_RealizedInvestmentGainsLossesNet_doc" xml:lang="en-US">Net income.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_LeaseInterestExpense" xlink:to="FSI_LeaseInterestExpense_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_LeaseInterestExpense_doc" xml:lang="en-US">Lease interest expense.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeasesLiabilityTermination" xlink:to="FSI_OperatingLeasesLiabilityTermination_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_OperatingLeasesLiabilityTermination_doc" xml:lang="en-US">Operating leases liability termination</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_NanoChemSolutionsIncMember" xlink:to="FSI_NanoChemSolutionsIncMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_NanoChemSolutionsIncMember_doc" xml:lang="en-US">NanoChem Solutions Inc [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities" xlink:to="FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities_doc" xml:lang="en-US">Inventory additions in accounts payable and accrued liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PromissoryNoteOneWithMidlandBankMember" xlink:to="FSI_PromissoryNoteOneWithMidlandBankMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_PromissoryNoteOneWithMidlandBankMember_doc" xml:lang="en-US">Promissory Note One With Midland Bank [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PromissoryNoteWithMidlandBankMember" xlink:to="FSI_PromissoryNoteWithMidlandBankMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_PromissoryNoteWithMidlandBankMember_doc" xml:lang="en-US">Promissory Note With Midland Bank [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfLoanCovenantsTableTextBlock" xlink:to="FSI_ScheduleOfLoanCovenantsTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ScheduleOfLoanCovenantsTableTextBlock_doc" xml:lang="en-US">Schedule Of Loan Covenants [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CapitalInExcessOfParValueMember" xlink:to="FSI_CapitalInExcessOfParValueMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_CapitalInExcessOfParValueMember_doc" xml:lang="en-US">Capital In Excess Of Par Value [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock" xlink:to="FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_doc" xml:lang="en-US">Schedule Of Non Operating Loss Carryforwards [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetsLiabilitiesGross" xlink:to="FSI_DeferredTaxAssetsLiabilitiesGross_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_DeferredTaxAssetsLiabilitiesGross_doc" xml:lang="en-US">Deferred Tax Assets Liabilities Gross.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetNet" xlink:to="FSI_DeferredTaxAssetNet_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_DeferredTaxAssetNet_doc" xml:lang="en-US">Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetLiabilitiesNet" xlink:to="FSI_DeferredTaxAssetLiabilitiesNet_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_DeferredTaxAssetLiabilitiesNet_doc" xml:lang="en-US">Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_doc" xml:lang="en-US">Exercise price per share.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_doc" xml:lang="en-US">Exercise price per share.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpInvestmentsLlcAndEnpMendotaMember" xlink:to="FSI_EnpInvestmentsLlcAndEnpMendotaMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EnpInvestmentsLlcAndEnpMendotaMember_doc" xml:lang="en-US">Enp Investments Llc And Enp Mendota [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfDistributionsTableTextBlock" xlink:to="FSI_ScheduleOfDistributionsTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ScheduleOfDistributionsTableTextBlock_doc" xml:lang="en-US">Schedule Of Distributions [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockIssuedInExchangeForServicesPolicyTextBlock" xlink:to="FSI_StockIssuedInExchangeForServicesPolicyTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_StockIssuedInExchangeForServicesPolicyTextBlock_doc" xml:lang="en-US">Stock issued in exchange for services [Policy Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfMethodOfDepreciationTableTextBlock" xlink:to="FSI_ScheduleOfMethodOfDepreciationTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ScheduleOfMethodOfDepreciationTableTextBlock_doc" xml:lang="en-US">Schedule Of Method Of Depreciation [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock" xlink:to="FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_doc" xml:lang="en-US">Summary Of Rightofuse Asset And Lease Liability [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeasesLiabilityAddition" xlink:to="FSI_OperatingLeasesLiabilityAddition_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_OperatingLeasesLiabilityAddition_doc" xml:lang="en-US">Operating leases liability addition.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" xlink:to="FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_doc" xml:lang="en-US">Schedule Of Recognized Identified Assets Acquired And Liabilities Assumed [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockOptionExercisePercent" xlink:to="FSI_StockOptionExercisePercent_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_StockOptionExercisePercent_doc" xml:lang="en-US">Stock option exercise percent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainOnInvestments" xlink:to="FSI_GainOnInvestments_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_GainOnInvestments_doc" xml:lang="en-US">Gain on investments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainLossOnSaleOfLand" xlink:to="FSI_GainLossOnSaleOfLand_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_GainLossOnSaleOfLand_doc" xml:lang="en-US">Gain loss on sale of land</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_UponExerciseofStockOptionsMember" xlink:to="FSI_UponExerciseofStockOptionsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_UponExerciseofStockOptionsMember_doc" xml:lang="en-US">Upon Exercise of Stock Options [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne" xlink:to="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne_doc" xml:lang="en-US">Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_NanoChemSolutionsIncMember" xlink:to="FSI_NanoChemSolutionsIncMember_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_NanoChemSolutionsIncMember_3_lbl" xml:lang="en-US">NanoChem Solutions Inc [Member] [Default Label]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrent_2_lbl" xml:lang="en-US">Assets, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Assets_2_lbl" xml:lang="en-US">Assets [Default Label]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrent_2_lbl" xml:lang="en-US">Liabilities, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Liabilities_2_lbl" xml:lang="en-US">Liabilities [Default Label]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquity_2_lbl" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_4_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_4_lbl" xml:lang="en-US">Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_2_lbl" xml:lang="en-US">Liabilities and Equity</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GrossProfit_2_lbl" xml:lang="en-US">Gross Profit</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_2_lbl" xml:lang="en-US">Foreign Currency Transaction Gain (Loss), before Tax</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingExpenses_2_lbl" xml:lang="en-US">Operating Expenses [Default Label]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingIncomeLoss_2_lbl" xml:lang="en-US">Operating Income (Loss)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_2_lbl" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest_2_lbl" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_2_lbl" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainLossOnInvestment" xlink:to="FSI_GainLossOnInvestment_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_GainLossOnInvestment_3_lbl" xml:lang="en-US">GainLossOnInvestment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BadDebtExpense" xlink:to="FSI_BadDebtExpense_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_BadDebtExpense_3_lbl" xml:lang="en-US">Bad debt expense [Default Label]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_PaycheckProtectionProgramLoanForgiveness" xlink:to="FSI_PaycheckProtectionProgramLoanForgiveness_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_PaycheckProtectionProgramLoanForgiveness_3_lbl" xml:lang="en-US">PaycheckProtectionProgramLoanForgiveness</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_2_lbl" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInInventories_2_lbl" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense_2_lbl" xml:lang="en-US">Increase (Decrease) in Prepaid Expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_2_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireInvestments" xlink:to="us-gaap_PaymentsToAcquireInvestments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireInvestments_2_lbl" xml:lang="en-US">Payments to Acquire Investments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_2_lbl" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_2_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLongTermDebt" xlink:to="us-gaap_RepaymentsOfLongTermDebt_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RepaymentsOfLongTermDebt_2_lbl" xml:lang="en-US">Repayments of Long-term Debt</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfFinancingCosts" xlink:to="us-gaap_PaymentsOfFinancingCosts_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsOfFinancingCosts_2_lbl" xml:lang="en-US">Payments of Financing Costs</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfDebt" xlink:to="us-gaap_RepaymentsOfDebt_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RepaymentsOfDebt_2_lbl" xml:lang="en-US">Repayments of Debt</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_2_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_2_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_3_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_2_lbl" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermInvestments" xlink:to="us-gaap_ShortTermInvestments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShortTermInvestments_2_lbl" xml:lang="en-US">Short-term Investments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharesOutstanding_3_lbl" xml:lang="en-US">Shares, Outstanding</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:to="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_3_lbl" xml:lang="en-US">Noncontrolling Interest, Decrease from Distributions to Noncontrolling Interest Holders</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_2_lbl" xml:lang="en-US">Operating Lease, Right-of-Use Asset, Amortization Expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeasesLiabilityAddition" xlink:to="FSI_OperatingLeasesLiabilityAddition_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_OperatingLeasesLiabilityAddition_3_lbl" xml:lang="en-US">OperatingLeasesLiabilityAddition</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OperatingLeasesLiabilityTermination" xlink:to="FSI_OperatingLeasesLiabilityTermination_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_OperatingLeasesLiabilityTermination_3_lbl" xml:lang="en-US">OperatingLeasesLiabilityTermination</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeasePayments_2_lbl" xml:lang="en-US">Operating Lease, Payments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_2_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:to="us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_2_lbl" xml:lang="en-US">Allowance for Doubtful Accounts, Premiums and Other Receivables</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsAndNotesReceivableNet" xlink:to="us-gaap_AccountsAndNotesReceivableNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsAndNotesReceivableNet_2_lbl" xml:lang="en-US">Accounts and Financing Receivable, after Allowance for Credit Loss</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_2_lbl" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year One</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_2_lbl" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Two</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_2_lbl" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Three</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_2_lbl" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Four</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_RealizedInvestmentGainsLossesNet" xlink:to="FSI_RealizedInvestmentGainsLossesNet_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_RealizedInvestmentGainsLossesNet_3_lbl" xml:lang="en-US">RealizedInvestmentGainsLossesNet</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_2_lbl" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt_2_lbl" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Long-term Debt</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_2_lbl" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_2_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year One</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_2_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year Two</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_2_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year Three</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_2_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year Four</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfBankDebt" xlink:to="us-gaap_RepaymentsOfBankDebt_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RepaymentsOfBankDebt_2_lbl" xml:lang="en-US">Repayments of Bank Debt</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForProceedsFromDepositOnLoan" xlink:to="us-gaap_PaymentsForProceedsFromDepositOnLoan_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsForProceedsFromDepositOnLoan_2_lbl" xml:lang="en-US">Payments for (Proceeds from) Deposit on Loan</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpenseDebt" xlink:to="us-gaap_InterestExpenseDebt_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestExpenseDebt_2_lbl" xml:lang="en-US">Interest Expense, Debt</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_2_lbl" xml:lang="en-US">Deferred Tax Assets, Valuation Allowance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsInvestments" xlink:to="us-gaap_DeferredTaxAssetsInvestments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsInvestments_2_lbl" xml:lang="en-US">Deferred Tax Assets, Investments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne" xlink:to="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne_3_lbl" xml:lang="en-US">DeferredTaxAssetsPropertyPlantsAndEquipmentOne</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_3_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_4_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_4_lbl" xml:lang="en-US">SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_3_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_2_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_2_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" xlink:to="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_3_lbl" xml:lang="en-US">SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_2_lbl" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpense" xlink:to="us-gaap_InterestExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestExpense_2_lbl" xml:lang="en-US">Interest Expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationNonproduction" xlink:to="us-gaap_DepreciationNonproduction_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationNonproduction_2_lbl" xml:lang="en-US">Depreciation, Nonproduction</link:label>
    </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>10
<FILENAME>fsi-20211231_pre.xml
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.13b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<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:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Cover" xlink:href="fsi-20211231.xsd#Cover" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheets" xlink:href="fsi-20211231.xsd#BalanceSheets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" xlink:href="fsi-20211231.xsd#BalanceSheetsParenthetical" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" xlink:href="fsi-20211231.xsd#StatementsOfIncomeAndComprehensiveIncome" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfCashFlows" xlink:href="fsi-20211231.xsd#StatementsOfCashFlows" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" xlink:href="fsi-20211231.xsd#StatementsOfStockholdersEquity" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentation" xlink:href="fsi-20211231.xsd#BasisOfPresentation" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPolicies" xlink:href="fsi-20211231.xsd#SignificantAccountingPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Leases" xlink:href="fsi-20211231.xsd#Leases" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivable" xlink:href="fsi-20211231.xsd#AccountsReceivable" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Inventories" xlink:href="fsi-20211231.xsd#Inventories" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds" xlink:href="fsi-20211231.xsd#PropertyEquipmentAndLeaseholds" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Patents" xlink:href="fsi-20211231.xsd#Patents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" xlink:href="fsi-20211231.xsd#GoodwillAndIntangibleAssets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDeposits" xlink:href="fsi-20211231.xsd#LongTermDeposits" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Investments" xlink:href="fsi-20211231.xsd#Investments" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCredit" xlink:href="fsi-20211231.xsd#Short-termLineOfCredit" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebt" xlink:href="fsi-20211231.xsd#LongTermDebt" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ConvertibleNotePayable" xlink:href="fsi-20211231.xsd#ConvertibleNotePayable" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxes" xlink:href="fsi-20211231.xsd#IncomeTaxes" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShare" xlink:href="fsi-20211231.xsd#IncomePerShare" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptions" xlink:href="fsi-20211231.xsd#StockOptions" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStock" xlink:href="fsi-20211231.xsd#CapitalStock" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:href="fsi-20211231.xsd#Non-controllingInterests" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:href="fsi-20211231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEvents" xlink:href="fsi-20211231.xsd#SubsequentEvents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:href="fsi-20211231.xsd#SignificantAccountingPoliciesPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:href="fsi-20211231.xsd#SignificantAccountingPoliciesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesTables" xlink:href="fsi-20211231.xsd#LeasesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:href="fsi-20211231.xsd#AccountsReceivableTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InventoriesTables" xlink:href="fsi-20211231.xsd#InventoriesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables" xlink:href="fsi-20211231.xsd#PropertyEquipmentAndLeaseholdsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsTables" xlink:href="fsi-20211231.xsd#PatentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:href="fsi-20211231.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:href="fsi-20211231.xsd#LongTermDepositsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsTables" xlink:href="fsi-20211231.xsd#InvestmentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:href="fsi-20211231.xsd#LongTermDebtTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:href="fsi-20211231.xsd#IncomeTaxesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:href="fsi-20211231.xsd#IncomePerShareTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsTables" xlink:href="fsi-20211231.xsd#StockOptionsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:href="fsi-20211231.xsd#Non-controllingInterestsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:href="fsi-20211231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:href="fsi-20211231.xsd#BasisOfPresentationDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:href="fsi-20211231.xsd#ScheduleOfMethodOfDepreciationDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:href="fsi-20211231.xsd#SignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:href="fsi-20211231.xsd#SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfUndiscountedRentPaymentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:href="fsi-20211231.xsd#LeasesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:href="fsi-20211231.xsd#ScheduleOfAccountsReceivableDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfInventoriesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative" xlink:href="fsi-20211231.xsd#PropertyEquipmentAndLeaseholdsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfPatentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails" xlink:href="fsi-20211231.xsd#ScheduleOfEstimatedAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:href="fsi-20211231.xsd#PatentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:href="fsi-20211231.xsd#ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:href="fsi-20211231.xsd#GoodwillAndIntangibleAssetsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfLongTermDepositsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:href="fsi-20211231.xsd#ScheduleOfEquityMethodInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:href="fsi-20211231.xsd#SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" xlink:href="fsi-20211231.xsd#ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:href="fsi-20211231.xsd#InvestmentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:href="fsi-20211231.xsd#Short-termLineOfCreditDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails" xlink:href="fsi-20211231.xsd#ScheduleOfInterestLoanRepaymentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfLoanCovenantsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:href="fsi-20211231.xsd#ScheduleOfOutstandingBalanceLoanDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:href="fsi-20211231.xsd#LongTermDebtDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative" xlink:href="fsi-20211231.xsd#ConvertibleNotePayableDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:href="fsi-20211231.xsd#ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:href="fsi-20211231.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:href="fsi-20211231.xsd#ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfAnti-dilutiveOptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:href="fsi-20211231.xsd#IncomePerShareDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfStockOptionActivitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:href="fsi-20211231.xsd#StockOptionsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:href="fsi-20211231.xsd#CapitalStockDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfDistributionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:href="fsi-20211231.xsd#Non-controllingInterestsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:href="fsi-20211231.xsd#ScheduleOfReportableSegmentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:href="fsi-20211231.xsd#ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" xlink:href="fsi-20211231.xsd#ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:href="fsi-20211231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:href="fsi-20211231.xsd#SubsequentEventsDetailsNarrative" xlink:type="simple" />
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Cover" xlink:title="00000001 - Document - Cover">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CoverAbstract" xlink:label="loc_deiCoverAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentType" xlink:label="loc_deiDocumentType" />
      <link:presentationArc order="0" 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/2021q4/dei-2021q4.xsd#dei_AmendmentFlag" xlink:label="loc_deiAmendmentFlag" />
      <link:presentationArc order="10" 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/2021q4/dei-2021q4.xsd#dei_AmendmentDescription" xlink:label="loc_deiAmendmentDescription" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentDescription" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentRegistrationStatement" xlink:label="loc_deiDocumentRegistrationStatement" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentRegistrationStatement" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAnnualReport" xlink:label="loc_deiDocumentAnnualReport" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAnnualReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_deiDocumentQuarterlyReport" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentQuarterlyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentTransitionReport" xlink:label="loc_deiDocumentTransitionReport" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentTransitionReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentShellCompanyReport" xlink:label="loc_deiDocumentShellCompanyReport" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentShellCompanyEventDate" xlink:label="loc_deiDocumentShellCompanyEventDate" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyEventDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentPeriodStartDate" xlink:label="loc_deiDocumentPeriodStartDate" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodStartDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_deiDocumentPeriodEndDate" />
      <link:presentationArc order="100" 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/2021q4/dei-2021q4.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_deiDocumentFiscalPeriodFocus" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalPeriodFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_deiDocumentFiscalYearFocus" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalYearFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_deiCurrentFiscalYearEndDate" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCurrentFiscalYearEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFileNumber" xlink:label="loc_deiEntityFileNumber" />
      <link:presentationArc order="140" 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/2021q4/dei-2021q4.xsd#dei_EntityRegistrantName" xlink:label="loc_deiEntityRegistrantName" />
      <link:presentationArc order="150" 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/2021q4/dei-2021q4.xsd#dei_EntityCentralIndexKey" xlink:label="loc_deiEntityCentralIndexKey" />
      <link:presentationArc order="160" 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/2021q4/dei-2021q4.xsd#dei_EntityPrimarySicNumber" xlink:label="loc_deiEntityPrimarySicNumber" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPrimarySicNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_deiEntityTaxIdentificationNumber" />
      <link:presentationArc order="180" 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/2021q4/dei-2021q4.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_deiEntityIncorporationStateCountryCode" />
      <link:presentationArc order="190" 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/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_deiEntityAddressAddressLine1" />
      <link:presentationArc order="200" 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/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine2" xlink:label="loc_deiEntityAddressAddressLine2" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine3" xlink:label="loc_deiEntityAddressAddressLine3" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine3" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_deiEntityAddressCityOrTown" />
      <link:presentationArc order="230" 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/2021q4/dei-2021q4.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_deiEntityAddressStateOrProvince" />
      <link:presentationArc order="240" 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/2021q4/dei-2021q4.xsd#dei_EntityAddressCountry" xlink:label="loc_deiEntityAddressCountry" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCountry" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_deiEntityAddressPostalZipCode" />
      <link:presentationArc order="260" 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/2021q4/dei-2021q4.xsd#dei_CountryRegion" xlink:label="loc_deiCountryRegion" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCountryRegion" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CityAreaCode" xlink:label="loc_deiCityAreaCode" />
      <link:presentationArc order="280" 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/2021q4/dei-2021q4.xsd#dei_LocalPhoneNumber" xlink:label="loc_deiLocalPhoneNumber" />
      <link:presentationArc order="290" 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/2021q4/dei-2021q4.xsd#dei_Extension" xlink:label="loc_deiExtension" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiExtension" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_WrittenCommunications" xlink:label="loc_deiWrittenCommunications" />
      <link:presentationArc order="310" 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/2021q4/dei-2021q4.xsd#dei_SolicitingMaterial" xlink:label="loc_deiSolicitingMaterial" />
      <link:presentationArc order="320" 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/2021q4/dei-2021q4.xsd#dei_PreCommencementTenderOffer" xlink:label="loc_deiPreCommencementTenderOffer" />
      <link:presentationArc order="330" 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/2021q4/dei-2021q4.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="loc_deiPreCommencementIssuerTenderOffer" />
      <link:presentationArc order="340" 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/2021q4/dei-2021q4.xsd#dei_Security12bTitle" xlink:label="loc_deiSecurity12bTitle" />
      <link:presentationArc order="350" 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/2021q4/dei-2021q4.xsd#dei_NoTradingSymbolFlag" xlink:label="loc_deiNoTradingSymbolFlag" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiNoTradingSymbolFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_TradingSymbol" xlink:label="loc_deiTradingSymbol" />
      <link:presentationArc order="370" 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/2021q4/dei-2021q4.xsd#dei_SecurityExchangeName" xlink:label="loc_deiSecurityExchangeName" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityExchangeName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_Security12gTitle" xlink:label="loc_deiSecurity12gTitle" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12gTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_SecurityReportingObligation" xlink:label="loc_deiSecurityReportingObligation" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityReportingObligation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AnnualInformationForm" xlink:label="loc_deiAnnualInformationForm" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAnnualInformationForm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="loc_deiAuditedAnnualFinancialStatements" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditedAnnualFinancialStatements" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_deiEntityWellKnownSeasonedIssuer" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityWellKnownSeasonedIssuer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_deiEntityVoluntaryFilers" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityVoluntaryFilers" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_deiEntityCurrentReportingStatus" />
      <link:presentationArc order="450" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCurrentReportingStatus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_deiEntityInteractiveDataCurrent" />
      <link:presentationArc order="460" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityInteractiveDataCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFilerCategory" xlink:label="loc_deiEntityFilerCategory" />
      <link:presentationArc order="470" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFilerCategory" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntitySmallBusiness" xlink:label="loc_deiEntitySmallBusiness" />
      <link:presentationArc order="480" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntitySmallBusiness" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_deiEntityEmergingGrowthCompany" />
      <link:presentationArc order="490" 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/2021q4/dei-2021q4.xsd#dei_EntityExTransitionPeriod" xlink:label="loc_deiEntityExTransitionPeriod" />
      <link:presentationArc order="500" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityExTransitionPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAccountingStandard" xlink:label="loc_deiDocumentAccountingStandard" />
      <link:presentationArc order="510" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAccountingStandard" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_OtherReportingStandardItemNumber" xlink:label="loc_deiOtherReportingStandardItemNumber" />
      <link:presentationArc order="520" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiOtherReportingStandardItemNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityShellCompany" xlink:label="loc_deiEntityShellCompany" />
      <link:presentationArc order="530" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityShellCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityPublicFloat" xlink:label="loc_deiEntityPublicFloat" />
      <link:presentationArc order="540" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPublicFloat" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="loc_deiEntityBankruptcyProceedingsReportingCurrent" />
      <link:presentationArc order="550" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityBankruptcyProceedingsReportingCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_deiEntityCommonStockSharesOutstanding" />
      <link:presentationArc order="560" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCommonStockSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="loc_deiDocumentsIncorporatedByReferenceTextBlock" />
      <link:presentationArc order="570" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentsIncorporatedByReferenceTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="loc_deiIcfrAuditorAttestationFlag" />
      <link:presentationArc order="580" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiIcfrAuditorAttestationFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorName" xlink:label="loc_deiAuditorName" />
      <link:presentationArc order="590" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditorName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorFirmId" xlink:label="loc_deiAuditorFirmId" />
      <link:presentationArc order="600" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditorFirmId" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorLocation" xlink:label="loc_deiAuditorLocation" />
      <link:presentationArc order="610" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditorLocation" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BalanceSheets" xlink:title="00000002 - Statement - Consolidated Balance Sheets">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaapAssetsAbstract" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapAssetsAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaapAssetsCurrentAbstract" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapAssetsCurrentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Cash" xlink:label="loc_us-gaapCash" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapCash" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepositsAssetsCurrent" xlink:label="loc_us-gaapDepositsAssetsCurrent" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapDepositsAssetsCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="loc_us-gaapPrepaidExpenseCurrent" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapPrepaidExpenseCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapAssetsCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FiniteLivedPatentGross" xlink:label="loc_FSIFiniteLivedPatentGross" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_FSIFiniteLivedPatentGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepositsAssetsNoncurrent" xlink:label="loc_us-gaapDepositsAssetsNoncurrent" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapDepositsAssetsNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="loc_us-gaapEquityMethodInvestments" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapEquityMethodInvestments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaapDeferredIncomeTaxAssetsNet" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxAssetsNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaapAssets" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapAssets" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAbstract" xlink:label="loc_us-gaapLiabilitiesAbstract" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapLiabilitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaapLiabilitiesCurrentAbstract" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAbstract" xlink:to="loc_us-gaapLiabilitiesCurrentAbstract" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaapAccountsPayableCurrent" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapAccountsPayableCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccruedLiabilitiesCurrent" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapAccruedLiabilitiesCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaapDeferredRevenueCurrent" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapDeferredRevenueCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxesPayableCurrent" xlink:label="loc_us-gaapTaxesPayableCurrent" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapTaxesPayableCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="loc_us-gaapLinesOfCreditCurrent" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapLinesOfCreditCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityCurrent" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapOperatingLeaseLiabilityCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaapLongTermDebtCurrent" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapLongTermDebtCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapLiabilitiesCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityNoncurrent" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAbstract" xlink:to="loc_us-gaapOperatingLeaseLiabilityNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAbstract" xlink:to="loc_us-gaapLongTermDebtNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaapLiabilities" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAbstract" xlink:to="loc_us-gaapLiabilities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaapStockholdersEquityAbstract" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAbstract" xlink:to="loc_us-gaapStockholdersEquityAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaapCommonStockValue" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapCommonStockValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="loc_us-gaapAdditionalPaidInCapital" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapAdditionalPaidInCapital" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaapRetainedEarningsAccumulatedDeficit" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapStockholdersEquity" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="loc_us-gaapMinorityInterest" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapMinorityInterest" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquity" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAbstract" xlink:to="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" xlink:title="00000003 - Statement - Consolidated Balance Sheets (Parenthetical)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaapCommonStockSharesAuthorized" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockSharesAuthorized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaapCommonStockParOrStatedValuePerShare" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockParOrStatedValuePerShare" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaapPreferredStockSharesAuthorized" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockSharesAuthorized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaapPreferredStockParOrStatedValuePerShare" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockParOrStatedValuePerShare" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaapCommonStockSharesIssued" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockSharesIssued" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaapCommonStockSharesOutstanding" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockSharesOutstanding" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" xlink:title="00000004 - Statement - Consolidated Statements of Income and Comprehensive Income">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaapIncomeStatementAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaapCostOfGoodsAndServicesSold" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapCostOfGoodsAndServicesSold" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaapGrossProfit" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapGrossProfit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaapOperatingExpensesAbstract" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapOperatingExpensesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalariesAndWages" xlink:label="loc_us-gaapSalariesAndWages" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapSalariesAndWages" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OfficersCompensation" xlink:label="loc_us-gaapOfficersCompensation" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapOfficersCompensation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralInsuranceExpense" xlink:label="loc_us-gaapGeneralInsuranceExpense" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapGeneralInsuranceExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseExpense" xlink:label="loc_us-gaapOperatingLeaseExpense" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapOperatingLeaseExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_Consulting" xlink:label="loc_FSIConsulting" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_FSIConsulting" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfessionalFees" xlink:label="loc_us-gaapProfessionalFees" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapProfessionalFees" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherGeneralExpense" xlink:label="loc_us-gaapOtherGeneralExpense" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapOtherGeneralExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InterestExpenses" xlink:label="loc_FSIInterestExpenses" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_FSIInterestExpenses" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaapSellingAndMarketingExpense" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapSellingAndMarketingExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapResearchAndDevelopmentExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TravelAndEntertainmentExpense" xlink:label="loc_us-gaapTravelAndEntertainmentExpense" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapTravelAndEntertainmentExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InvestorRelationsAndTransferAgentFee" xlink:label="loc_FSIInvestorRelationsAndTransferAgentFee" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_FSIInvestorRelationsAndTransferAgentFee" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_Commissions" xlink:label="loc_FSICommissions" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_FSICommissions" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommunicationsAndInformationTechnology" xlink:label="loc_us-gaapCommunicationsAndInformationTechnology" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapCommunicationsAndInformationTechnology" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UtilitiesOperatingExpense" xlink:label="loc_us-gaapUtilitiesOperatingExpense" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapUtilitiesOperatingExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ShippingCost" xlink:label="loc_FSIShippingCost" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_FSIShippingCost" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaapProvisionForDoubtfulAccounts" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapProvisionForDoubtfulAccounts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapOperatingExpenses" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapOperatingIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainLossOnSaleOfLand" xlink:label="loc_FSIGainLossOnSaleOfLand" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_FSIGainLossOnSaleOfLand" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PppLoanForgiveness" xlink:label="loc_FSIPppLoanForgiveness" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_FSIPppLoanForgiveness" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnInvestments" xlink:label="loc_us-gaapGainLossOnInvestments" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapGainLossOnInvestments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainOnAcquisition" xlink:label="loc_FSIGainOnAcquisition" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_FSIGainOnAcquisition" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentIncomeInterest" xlink:label="loc_us-gaapInvestmentIncomeInterest" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapInvestmentIncomeInterest" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract" xlink:label="loc_us-gaapDeferredIncomeTaxesAndTaxCreditsAbstract" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxesAndTaxCreditsAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentIncomeTaxExpenseBenefit" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapCurrentIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapProfitLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapNetIncomeLossAttributableToNoncontrollingInterest" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapNetIncomeLossAttributableToNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasicAndDiluted" xlink:label="loc_us-gaapEarningsPerShareBasicAndDiluted" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapEarningsPerShareBasicAndDiluted" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTax" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StatementsOfCashFlows" xlink:title="00000005 - Statement - Consolidated Statements of Cash Flows">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaapStatementOfCashFlowsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapProfitLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaapShareBasedCompensation" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapShareBasedCompensation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaapDepreciationAndAmortization" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapDepreciationAndAmortization" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LeaseRightOfUseFinancing" xlink:label="loc_FSILeaseRightOfUseFinancing" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_FSILeaseRightOfUseFinancing" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="loc_us-gaapFinanceLeaseRightOfUseAssetAmortization" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapFinanceLeaseRightOfUseAssetAmortization" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainLossOnInvestment" xlink:label="loc_FSIGainLossOnInvestment" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_FSIGainLossOnInvestment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BadDebtExpense" xlink:label="loc_FSIBadDebtExpense" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_FSIBadDebtExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainLossOnSaleOfLand" xlink:label="loc_FSIGainLossOnSaleOfLand" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_FSIGainLossOnSaleOfLand" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramLoanForgiveness" xlink:label="loc_FSIPaycheckProtectionProgramLoanForgiveness" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_FSIPaycheckProtectionProgramLoanForgiveness" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsReceivable" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsReceivable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaapIncreaseDecreaseInInventories" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInInventories" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="loc_us-gaapIncreaseDecreaseInPrepaidExpense" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInPrepaidExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromOtherDeposits" xlink:label="loc_us-gaapProceedsFromOtherDeposits" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromOtherDeposits" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaapPaymentsToAcquireInvestments" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToAcquireInvestments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:label="loc_us-gaapProceedsFromSaleOfEquityMethodInvestments" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromSaleOfEquityMethodInvestments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment" xlink:label="loc_us-gaapProceedsFromSaleOfOtherPropertyPlantAndEquipment" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromSaleOfOtherPropertyPlantAndEquipment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:label="loc_us-gaapProceedsFromRepaymentsOfLinesOfCredit" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromRepaymentsOfLinesOfCredit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="loc_us-gaapRepaymentsOfLongTermDebt" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapRepaymentsOfLongTermDebt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="loc_us-gaapProceedsFromIssuanceOfLongTermDebt" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromIssuanceOfLongTermDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfFinancingCosts" xlink:label="loc_us-gaapPaymentsOfFinancingCosts" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsOfFinancingCosts" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfDebt" xlink:label="loc_us-gaapRepaymentsOfDebt" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapRepaymentsOfDebt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="loc_us-gaapPaymentsToMinorityShareholders" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToMinorityShareholders" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaapProceedsFromIssuanceOfCommonStock" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromIssuanceOfCommonStock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermInvestments" xlink:label="loc_us-gaapShortTermInvestments" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapShortTermInvestments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="loc_us-gaapSupplementalCashFlowInformationAbstract" />
      <link:presentationArc order="450" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapSupplementalCashFlowInformationAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="loc_us-gaapIncomeTaxesPaidNet" />
      <link:presentationArc order="460" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSupplementalCashFlowInformationAbstract" xlink:to="loc_us-gaapIncomeTaxesPaidNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaapInterestPaidNet" />
      <link:presentationArc order="470" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSupplementalCashFlowInformationAbstract" xlink:to="loc_us-gaapInterestPaidNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities" xlink:label="loc_FSIInventoryAdditionsInAccountsPayableAndAccruedLiabilities" />
      <link:presentationArc order="480" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSupplementalCashFlowInformationAbstract" xlink:to="loc_FSIInventoryAdditionsInAccountsPayableAndAccruedLiabilities" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" xlink:title="00000006 - Statement - Consolidated Statements of Stockholders&apos; Equity">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaapStatementOfStockholdersEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfStockholdersEquityAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" order="70" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapCommonStockMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_CapitalInExcessOfParValueMember" xlink:label="loc_FSICapitalInExcessOfParValueMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_FSICapitalInExcessOfParValueMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaapRetainedEarningsMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapRetainedEarningsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ParentMember" xlink:label="loc_us-gaapParentMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapParentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="loc_us-gaapNoncontrollingInterestMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapNoncontrollingInterestMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaapSharesOutstanding" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesOutstanding" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaapOtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapProfitLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueNewIssues" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueNewIssues" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:label="loc_us-gaapMinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapMinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaapAdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_2" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaapSharesOutstanding_2" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesOutstanding_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BasisOfPresentation" xlink:title="00000007 - Disclosure - BASIS OF PRESENTATION">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:label="loc_us-gaapBusinessDescriptionAndBasisOfPresentationTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapBusinessDescriptionAndBasisOfPresentationTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPolicies" xlink:title="00000008 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaapSignificantAccountingPoliciesTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapSignificantAccountingPoliciesTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Leases" xlink:title="00000009 - Disclosure - LEASES">
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="loc_us-gaapLesseeOperatingLeasesTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapLesseeOperatingLeasesTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/AccountsReceivable" xlink:title="00000010 - Disclosure - ACCOUNTS RECEIVABLE">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesAbstract" xlink:label="loc_us-gaapReceivablesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinancingReceivablesTextBlock" xlink:label="loc_us-gaapFinancingReceivablesTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapReceivablesAbstract" xlink:to="loc_us-gaapFinancingReceivablesTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Inventories" xlink:title="00000011 - Disclosure - INVENTORIES">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaapInventoryDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="loc_us-gaapInventoryDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds" xlink:title="00000012 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="loc_us-gaapPropertyPlantAndEquipmentDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentAbstract" xlink:to="loc_us-gaapPropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Patents" xlink:title="00000013 - Disclosure - PATENTS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaapIntangibleAssetsDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapIntangibleAssetsDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" xlink:title="00000014 - Disclosure - GOODWILL AND INTANGIBLE ASSETS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDeposits" xlink:title="00000015 - Disclosure - LONG TERM DEPOSITS">
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLongTermDepositsAbstract" xlink:label="loc_FSIDisclosureLongTermDepositsAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LongTermDepositsTextBlock" xlink:label="loc_FSILongTermDepositsTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLongTermDepositsAbstract" xlink:to="loc_FSILongTermDepositsTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Investments" xlink:title="00000016 - Disclosure - INVESTMENTS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:label="loc_us-gaapEquityMethodInvestmentsDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapEquityMethodInvestmentsDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Short-termLineOfCredit" xlink:title="00000017 - Disclosure - SHORT-TERM LINE OF CREDIT">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtTextBlock" xlink:label="loc_us-gaapShortTermDebtTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapShortTermDebtTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebt" xlink:title="00000018 - Disclosure - LONG TERM DEBT">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="loc_us-gaapLongTermDebtTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ConvertibleNotePayable" xlink:title="00000019 - Disclosure - CONVERTIBLE NOTE PAYABLE">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="loc_us-gaapDebtDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapDebtDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxes" xlink:title="00000020 - Disclosure - INCOME TAXES">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaapIncomeTaxDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShare" xlink:title="00000021 - Disclosure - INCOME PER SHARE">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaapEarningsPerShareTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapEarningsPerShareTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptions" xlink:title="00000022 - Disclosure - STOCK OPTIONS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapDisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStock" xlink:title="00000023 - Disclosure - CAPITAL STOCK">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaapStockholdersEquityNoteDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapStockholdersEquityNoteDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:title="00000024 - Disclosure - NON-CONTROLLING INTERESTS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestAbstract" xlink:label="loc_us-gaapNoncontrollingInterestAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestDisclosureTextBlock" xlink:label="loc_us-gaapMinorityInterestDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncontrollingInterestAbstract" xlink:to="loc_us-gaapMinorityInterestDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:title="00000025 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaapSegmentReportingDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract" xlink:to="loc_us-gaapSegmentReportingDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SubsequentEvents" xlink:title="00000026 - Disclosure - SUBSEQUENT EVENTS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaapSubsequentEventsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="loc_us-gaapSubsequentEventsTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventsAbstract" xlink:to="loc_us-gaapSubsequentEventsTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:title="00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="loc_us-gaapCashAndCashEquivalentsPolicyTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapCashAndCashEquivalentsPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="loc_us-gaapInventoryPolicyTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapInventoryPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy" xlink:label="loc_us-gaapPremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapPremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="loc_us-gaapPropertyPlantAndEquipmentPolicyTextBlock" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapPropertyPlantAndEquipmentPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="loc_us-gaapImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="loc_us-gaapForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="loc_us-gaapRevenueFromContractWithCustomerPolicyTextBlock" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapRevenueFromContractWithCustomerPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockIssuedInExchangeForServicesPolicyTextBlock" xlink:label="loc_FSIStockIssuedInExchangeForServicesPolicyTextBlock" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_FSIStockIssuedInExchangeForServicesPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CompensationRelatedCostsPolicyTextBlock" xlink:label="loc_us-gaapCompensationRelatedCostsPolicyTextBlock" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapCompensationRelatedCostsPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:label="loc_us-gaapComprehensiveIncomePolicyPolicyTextBlock" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapComprehensiveIncomePolicyPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="loc_us-gaapEarningsPerSharePolicyTextBlock" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapEarningsPerSharePolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="loc_us-gaapUseOfEstimates" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapUseOfEstimates" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="loc_us-gaapFairValueOfFinancialInstrumentsPolicy" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapFairValueOfFinancialInstrumentsPolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:label="loc_us-gaapCommitmentsAndContingenciesPolicyTextBlock" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapCommitmentsAndContingenciesPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaapIncomeTaxPolicyTextBlock" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapIncomeTaxPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="loc_us-gaapConcentrationRiskCreditRisk" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapConcentrationRiskCreditRisk" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsPolicy" xlink:label="loc_us-gaapEquityMethodInvestmentsPolicy" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapEquityMethodInvestmentsPolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapGoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="loc_us-gaapNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:title="00000028 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfMethodOfDepreciationTableTextBlock" xlink:label="loc_FSIScheduleOfMethodOfDepreciationTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_FSIScheduleOfMethodOfDepreciationTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesTables" xlink:title="00000029 - Disclosure - LEASES (Tables)">
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock" xlink:label="loc_FSISummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_FSISummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:title="00000030 - Disclosure - ACCOUNTS RECEIVABLE (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesAbstract" xlink:label="loc_us-gaapReceivablesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:label="loc_us-gaapAccountsReceivableAllowanceForCreditLossTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapReceivablesAbstract" xlink:to="loc_us-gaapAccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InventoriesTables" xlink:title="00000031 - Disclosure - INVENTORIES (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaapInventoryDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaapScheduleOfInventoryCurrentTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables" xlink:title="00000032 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentAbstract" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PatentsTables" xlink:title="00000033 - Disclosure - PATENTS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaapScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:title="00000034 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock" xlink:label="loc_us-gaapScheduleOfIntangibleAssetsAndGoodwillTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfIntangibleAssetsAndGoodwillTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock" xlink:label="loc_FSIScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_FSIScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:title="00000035 - Disclosure - LONG TERM DEPOSITS (Tables)">
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLongTermDepositsAbstract" xlink:label="loc_FSIDisclosureLongTermDepositsAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfLongTermDepositsTableTextBlock" xlink:label="loc_FSIScheduleOfLongTermDepositsTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLongTermDepositsAbstract" xlink:to="loc_FSIScheduleOfLongTermDepositsTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InvestmentsTables" xlink:title="00000036 - Disclosure - INVESTMENTS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpRealtyLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIFloridaBasedLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSILygosIncMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsTextBlock" xlink:label="loc_us-gaapEquityMethodInvestmentsTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentsTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnInvestmentsTextBlock" xlink:label="loc_us-gaapGainLossOnInvestmentsTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapGainLossOnInvestmentsTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" xlink:label="loc_FSIScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:title="00000037 - Disclosure - LONG TERM DEBT (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTable" xlink:label="loc_us-gaapScheduleOfShortTermDebtTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfShortTermDebtTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtLineItems" xlink:label="loc_us-gaapShortTermDebtLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapShortTermDebtLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapDebtInstrumentAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteOneWithMidlandBankMember" xlink:label="loc_FSIPromissoryNoteOneWithMidlandBankMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSIPromissoryNoteOneWithMidlandBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteWithMidlandBankMember" xlink:label="loc_FSIPromissoryNoteWithMidlandBankMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSIPromissoryNoteWithMidlandBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="loc_us-gaapScheduleOfMaturitiesOfLongTermDebtTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfLoanCovenantsTableTextBlock" xlink:label="loc_FSIScheduleOfLoanCovenantsTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_FSIScheduleOfLoanCovenantsTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="loc_us-gaapScheduleOfDebtInstrumentsTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapScheduleOfDebtInstrumentsTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:title="00000038 - Disclosure - INCOME TAXES (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="loc_us-gaapScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaapScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_us-gaapScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock" xlink:label="loc_FSIScheduleOfNonOperatingLossCarryforwardsTableTextBlock" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_FSIScheduleOfNonOperatingLossCarryforwardsTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:title="00000039 - Disclosure - INCOME PER SHARE (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="loc_us-gaapScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsTables" xlink:title="00000040 - Disclosure - STOCK OPTIONS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="loc_us-gaapScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:title="00000041 - Disclosure - NON-CONTROLLING INTERESTS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestAbstract" xlink:label="loc_us-gaapNoncontrollingInterestAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ScheduleOfDistributionsTableTextBlock" xlink:label="loc_FSIScheduleOfDistributionsTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncontrollingInterestAbstract" xlink:to="loc_FSIScheduleOfDistributionsTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:title="00000042 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:label="loc_us-gaapReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract" xlink:to="loc_us-gaapReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:label="loc_us-gaapScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract" xlink:to="loc_us-gaapScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock" xlink:label="loc_us-gaapScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract" xlink:to="loc_us-gaapScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:title="00000043 - Disclosure - BASIS OF PRESENTATION (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_srtOwnershipAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLlcAndEnpMendotaMember" xlink:label="loc_FSIEnpInvestmentsLlcAndEnpMendotaMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpInvestmentsLlcAndEnpMendotaMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpnvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpInvestmentsLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpRealtyLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_deiLegalEntityAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_UnrelatedPartyMember" xlink:label="loc_FSIUnrelatedPartyMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIUnrelatedPartyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_srtRangeAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" xlink:label="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:title="00000044 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="loc_us-gaapComputerEquipmentMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapComputerEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaapFurnitureAndFixturesMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapFurnitureAndFixturesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaapMachineryAndEquipmentMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapMachineryAndEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapOfficeEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BoatMember" xlink:label="loc_FSIBoatMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBoatMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BuildingAndImprovementsMember" xlink:label="loc_FSIBuildingAndImprovementsMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBuildingAndImprovementsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TrailerMember" xlink:label="loc_FSITrailerMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSITrailerMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AutomobilesMember" xlink:label="loc_us-gaapAutomobilesMember" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapAutomobilesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PatentsMember" xlink:label="loc_us-gaapPatentsMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapPatentsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TechnologyEquipmentMember" xlink:label="loc_us-gaapTechnologyEquipmentMember" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapTechnologyEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_CustomerRelationshipsENPInvestmentsMember" xlink:label="loc_FSICustomerRelationshipsENPInvestmentsMember" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSICustomerRelationshipsENPInvestmentsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SoftwareENPInvestmentsMember" xlink:label="loc_FSISoftwareENPInvestmentsMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSISoftwareENPInvestmentsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DepreciationMethodUsedAndAnnualRate" xlink:label="loc_FSIDepreciationMethodUsedAndAnnualRate" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_FSIDepreciationMethodUsedAndAnnualRate" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:title="00000045 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="loc_us-gaapScheduleOfProductInformationTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapScheduleOfProductInformationTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProductInformationLineItems" xlink:label="loc_us-gaapProductInformationLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapProductInformationLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_srtProductOrServiceAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShippingAndHandlingMember" xlink:label="loc_us-gaapShippingAndHandlingMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_us-gaapShippingAndHandlingMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaapConcentrationRiskByTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapConcentrationRiskByTypeAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaapConcentrationRiskTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskByTypeAxis" xlink:to="loc_us-gaapConcentrationRiskTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ThreePrimaryCustomersMember" xlink:label="loc_FSIThreePrimaryCustomersMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskTypeDomain" xlink:to="loc_FSIThreePrimaryCustomersMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaapConcentrationRiskByBenchmarkAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapConcentrationRiskByBenchmarkAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerMember" xlink:label="loc_us-gaapRevenueFromContractWithCustomerMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapRevenueFromContractWithCustomerMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaapAccountsReceivableMember" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapAccountsReceivableMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaapCostOfGoodsAndServicesSold" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapCostOfGoodsAndServicesSold" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ConcentrationRiskThresholdPercentage" xlink:label="loc_FSIConcentrationRiskThresholdPercentage" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_FSIConcentrationRiskThresholdPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAccountsReceivableNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities" xlink:label="loc_us-gaapEquityMethodInvestmentDescriptionOfPrincipalActivities" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentDescriptionOfPrincipalActivities" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:title="00000046 - Disclosure - SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)">
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OperatingLeaseAssetsAddition" xlink:label="loc_FSIOperatingLeaseAssetsAddition" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_FSIOperatingLeaseAssetsAddition" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OperatingLeasesAssetsTermination" xlink:label="loc_FSIOperatingLeasesAssetsTermination" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_FSIOperatingLeasesAssetsTermination" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAssetAmortizationExpense" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAssetAmortizationExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset_2" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeaseLiability" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OperatingLeasesLiabilityAddition" xlink:label="loc_FSIOperatingLeasesLiabilityAddition" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_FSIOperatingLeasesLiabilityAddition" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OperatingLeasesLiabilityTermination" xlink:label="loc_FSIOperatingLeasesLiabilityTermination" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_FSIOperatingLeasesLiabilityTermination" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LeaseInterestExpense" xlink:label="loc_FSILeaseInterestExpense" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_FSILeaseInterestExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaapOperatingLeasePayments" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeasePayments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability_2" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeaseLiability_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityCurrent" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeaseLiabilityCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityNoncurrent" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeaseLiabilityNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability_3" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeaseLiability_3" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" xlink:title="00000047 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapOperatingLeaseLiability" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:title="00000048 - Disclosure - LEASES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseDiscountRate" xlink:label="loc_us-gaapLesseeOperatingLeaseDiscountRate" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLeasesAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseDiscountRate" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:title="00000049 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesAbstract" xlink:label="loc_us-gaapReceivablesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableGross" xlink:label="loc_us-gaapAccountsReceivableGross" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapReceivablesAbstract" xlink:to="loc_us-gaapAccountsReceivableGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapReceivablesAbstract" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsAndNotesReceivableNet" xlink:label="loc_us-gaapAccountsAndNotesReceivableNet" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapReceivablesAbstract" xlink:to="loc_us-gaapAccountsAndNotesReceivableNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails" xlink:title="00000050 - Disclosure - SCHEDULE OF INVENTORIES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaapInventoryDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryFinishedGoods" xlink:label="loc_us-gaapInventoryFinishedGoods" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryFinishedGoods" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryWorkInProcess" xlink:label="loc_us-gaapInventoryWorkInProcess" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryWorkInProcess" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryRawMaterialsAndSupplies" xlink:label="loc_us-gaapInventoryRawMaterialsAndSupplies" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryRawMaterialsAndSupplies" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:title="00000051 - Disclosure -  SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentAbstract" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BuildingAndImprovementsMember" xlink:label="loc_FSIBuildingAndImprovementsMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBuildingAndImprovementsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AutomobilesMember" xlink:label="loc_us-gaapAutomobilesMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapAutomobilesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="loc_us-gaapComputerEquipmentMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapComputerEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaapFurnitureAndFixturesMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapFurnitureAndFixturesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapOfficeEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaapMachineryAndEquipmentMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapMachineryAndEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TrailerMember" xlink:label="loc_FSITrailerMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSITrailerMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BoatMember" xlink:label="loc_FSIBoatMember" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBoatMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaapDevelopedTechnologyRightsMember" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapDevelopedTechnologyRightsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LandMember" xlink:label="loc_us-gaapLandMember" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLandMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative" xlink:title="00000052 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentAbstract" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquipmentMember" xlink:label="loc_us-gaapEquipmentMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaapDepreciation" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapDepreciation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AreaOfLand" xlink:label="loc_us-gaapAreaOfLand" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAreaOfLand" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:label="loc_us-gaapProceedsFromSaleOfMachineryAndEquipment" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapProceedsFromSaleOfMachineryAndEquipment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainOnInvestments" xlink:label="loc_FSIGainOnInvestments" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_FSIGainOnInvestments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapGainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:title="00000053 - Disclosure - SCHEDULE OF PATENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedPatentsGross" xlink:label="loc_us-gaapFiniteLivedPatentsGross" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedPatentsGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails" xlink:title="00000054 - Disclosure - SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:title="00000055 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnPInvestmentsCorporationLLCMember" xlink:label="loc_FSIEnPInvestmentsCorporationLLCMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnPInvestmentsCorporationLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaapIndefiniteLivedIntangibleAssetsExcludingGoodwill" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapIndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaapAmortizationOfIntangibleAssets" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAmortizationOfIntangibleAssets" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet_2" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:title="00000056 - Disclosure - PATENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapAwardTypeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_CADMember" xlink:label="loc_FSICADMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_FSICADMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_IncreaseInCurrencyConversion" xlink:label="loc_FSIIncreaseInCurrencyConversion" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSIIncreaseInCurrencyConversion" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaapAmortizationOfIntangibleAssets" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapAmortizationOfIntangibleAssets" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:title="00000057 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareTable" xlink:label="loc_us-gaapImpairmentEffectsOnEarningsPerShareTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapImpairmentEffectsOnEarningsPerShareTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:label="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareTable" xlink:to="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="loc_us-gaapFairValueByAssetClassAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareTable" xlink:to="loc_us-gaapFairValueByAssetClassAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueByAssetClassAxis" xlink:to="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMember" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFive" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:title="00000058 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_srtOwnershipAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpnvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaapCustomerRelationshipsMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapCustomerRelationshipsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComputerSoftwareIntangibleAssetMember" xlink:label="loc_us-gaapComputerSoftwareIntangibleAssetMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapComputerSoftwareIntangibleAssetMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:title="00000059 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)">
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DisclosureLongTermDepositsAbstract" xlink:label="loc_FSIDisclosureLongTermDepositsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepositsAssetsNoncurrent" xlink:label="loc_us-gaapDepositsAssetsNoncurrent" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIDisclosureLongTermDepositsAbstract" xlink:to="loc_us-gaapDepositsAssetsNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:title="00000060 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpRealtyLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIFloridaBasedLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSILygosIncMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="loc_us-gaapEquityMethodInvestments" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EquityMethodInvestmentReturnOfEquity" xlink:label="loc_FSIEquityMethodInvestmentReturnOfEquity" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIEquityMethodInvestmentReturnOfEquity" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:label="loc_us-gaapEquityMethodInvestmentRealizedGainLossOnDisposal" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentRealizedGainLossOnDisposal" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="loc_us-gaapEquityMethodInvestments_2" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestments_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InvestmentEliminatedUponConsolidation" xlink:label="loc_FSIInvestmentEliminatedUponConsolidation" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIInvestmentEliminatedUponConsolidation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_AdditionalPayment" xlink:label="loc_FSIAdditionalPayment" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIAdditionalPayment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AcquisitionCosts" xlink:label="loc_us-gaapAcquisitionCosts" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAcquisitionCosts" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:title="00000061 - Disclosure - SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIFloridaBasedLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainsLossesOnSalesOfInvestmentRealEstate" xlink:label="loc_us-gaapGainsLossesOnSalesOfInvestmentRealEstate" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapGainsLossesOnSalesOfInvestmentRealEstate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_RealizedInvestmentGainsLossesNet" xlink:label="loc_FSIRealizedInvestmentGainsLossesNet" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIRealizedInvestmentGainsLossesNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RealizedInvestmentGainsLosses" xlink:label="loc_us-gaapRealizedInvestmentGainsLosses" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRealizedInvestmentGainsLosses" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails" xlink:title="00000062 - Disclosure - SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_InvestmentEliminatedUponConsolidation" xlink:label="loc_FSIInvestmentEliminatedUponConsolidation" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_FSIInvestmentEliminatedUponConsolidation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_GainOnAcquisitionOfEnpRealty" xlink:label="loc_FSIGainOnAcquisitionOfEnpRealty" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_FSIGainOnAcquisitionOfEnpRealty" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:title="00000063 - Disclosure - INVESTMENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpRealtyLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_AppliedHoldingCorpMember" xlink:label="loc_FSIAppliedHoldingCorpMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIAppliedHoldingCorpMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TrioOpportunityCorpMember" xlink:label="loc_FSITrioOpportunityCorpMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSITrioOpportunityCorpMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIFloridaBasedLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSILygosIncMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtOwnershipAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember_2" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpRealtyLLCMember_2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtRangeAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaapStatementClassOfStockAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementClassOfStockAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaapClassOfStockDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementClassOfStockAxis" xlink:to="loc_us-gaapClassOfStockDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassBMember" xlink:label="loc_us-gaapCommonClassBMember" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapClassOfStockDomain" xlink:to="loc_us-gaapCommonClassBMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromContributionsFromAffiliates" xlink:label="loc_us-gaapProceedsFromContributionsFromAffiliates" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapProceedsFromContributionsFromAffiliates" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByNoncontrollingOwners" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" xlink:label="loc_us-gaapInvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapInvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentExpirationOrDueDateYear" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentExpirationOrDueDateYear" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentTerm" xlink:label="loc_us-gaapDebtInstrumentTerm" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtInstrumentTerm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaapSharePrice" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedCashNoncurrent" xlink:label="loc_us-gaapRestrictedCashNoncurrent" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRestrictedCashNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration" xlink:label="loc_us-gaapAssetAcquisitionConsiderationTransferredContingentConsideration" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAssetAcquisitionConsiderationTransferredContingentConsideration" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAccountsReceivableNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:title="00000064 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="loc_us-gaapLineOfCreditFacilityTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLineOfCreditFacilityTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="loc_us-gaapLineOfCreditFacilityLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapLineOfCreditFacilityLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaapTypeOfArrangementAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapTypeOfArrangementAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTypeOfArrangementAxis" xlink:to="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NewAgreementMember" xlink:label="loc_FSINewAgreementMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" xlink:to="loc_FSINewAgreementMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="loc_us-gaapLineOfCreditFacilityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapLineOfCreditFacilityAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="loc_us-gaapLineOfCreditFacilityLenderDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityAxis" xlink:to="loc_us-gaapLineOfCreditFacilityLenderDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLenderDomain" xlink:to="loc_FSIHarrisBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankMember" xlink:label="loc_FSIMidlandStatesBankMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember_2" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIHarrisBankMember_2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_srtRangeAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaapSubsequentEventTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapSubsequentEventTypeAxis" order="50" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaapSubsequentEventTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventTypeAxis" xlink:to="loc_us-gaapSubsequentEventTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaapSubsequentEventMember" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventTypeDomain" xlink:to="loc_us-gaapSubsequentEventMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_deiLegalEntityAxis" order="60" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NanoChemSolutionIncMember" xlink:label="loc_FSINanoChemSolutionIncMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSINanoChemSolutionIncMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapDebtInstrumentAxis" order="70" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TermLoanMember" xlink:label="loc_FSITermLoanMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSITermLoanMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EligiblePercentageOfDomesticAccountsReceivable" xlink:label="loc_FSIEligiblePercentageOfDomesticAccountsReceivable" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_FSIEligiblePercentageOfDomesticAccountsReceivable" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PercentageOfForeignAccountsReceivableOfInventory" xlink:label="loc_FSIPercentageOfForeignAccountsReceivableOfInventory" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_FSIPercentageOfForeignAccountsReceivableOfInventory" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:label="loc_us-gaapLineOfCreditFacilityInterestRateDuringPeriod" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityInterestRateDuringPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd" xlink:label="loc_us-gaapLineOfCreditFacilityInterestRateAtPeriodEnd" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityInterestRateAtPeriodEnd" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCredit" xlink:label="loc_us-gaapLineOfCredit" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCredit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_LoanGuaranteedRate" xlink:label="loc_FSILoanGuaranteedRate" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_FSILoanGuaranteedRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="loc_us-gaapLinesOfCreditCurrent" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLinesOfCreditCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermBorrowings" xlink:label="loc_us-gaapShortTermBorrowings" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapShortTermBorrowings" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateStatedPercentage" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails" xlink:title="00000065 - Disclosure - SCHEDULE OF INTEREST LOAN REPAYMENT (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTable" xlink:label="loc_us-gaapScheduleOfShortTermDebtTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfShortTermDebtTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtLineItems" xlink:label="loc_us-gaapShortTermDebtLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapShortTermDebtLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapDebtInstrumentAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteOneWithMidlandBankMember" xlink:label="loc_FSIPromissoryNoteOneWithMidlandBankMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSIPromissoryNoteOneWithMidlandBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PromissoryNoteWithMidlandBankMember" xlink:label="loc_FSIPromissoryNoteWithMidlandBankMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSIPromissoryNoteWithMidlandBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:title="00000066 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaapLongTermDebt" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromLoans" xlink:label="loc_us-gaapProceedsFromLoans" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapProceedsFromLoans" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ProceedsFromLoanAcquiredWithAcquisition" xlink:label="loc_FSIProceedsFromLoanAcquiredWithAcquisition" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_FSIProceedsFromLoanAcquiredWithAcquisition" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfBankDebt" xlink:label="loc_us-gaapRepaymentsOfBankDebt" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapRepaymentsOfBankDebt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForProceedsFromDepositOnLoan" xlink:label="loc_us-gaapPaymentsForProceedsFromDepositOnLoan" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapPaymentsForProceedsFromDepositOnLoan" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaapLongTermDebt_2" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebt_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:title="00000067 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIHarrisBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankOneMember" xlink:label="loc_FSIHarrisBankOneMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIHarrisBankOneMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankMember" xlink:label="loc_FSIMidlandStatesBankMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FordMotorCreditCompanyMember" xlink:label="loc_FSIFordMotorCreditCompanyMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIFordMotorCreditCompanyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramMember" xlink:label="loc_FSIPaycheckProtectionProgramMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIPaycheckProtectionProgramMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramOneMember" xlink:label="loc_FSIPaycheckProtectionProgramOneMember" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIPaycheckProtectionProgramOneMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankOneMember" xlink:label="loc_FSIMidlandStatesBankOneMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankOneMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandStatesBankTwoMember" xlink:label="loc_FSIMidlandStatesBankTwoMember" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankTwoMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockYardsBankTrustMember" xlink:label="loc_FSIStockYardsBankTrustMember" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaapLongTermDebt" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLongTermDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaapLongTermDebtCurrent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLongTermDebtCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLongTermDebtNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:title="00000068 - Disclosure - LONG TERM DEBT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShortTermDebtTable" xlink:label="loc_us-gaapScheduleOfShortTermDebtTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfShortTermDebtTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtLineItems" xlink:label="loc_us-gaapShortTermDebtLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapShortTermDebtLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapDebtInstrumentAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TermLoanMember" xlink:label="loc_FSITermLoanMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSITermLoanMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIHarrisBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_MidlandBankMember" xlink:label="loc_FSIMidlandBankMember" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_FordMotorCreditCompanyMember" xlink:label="loc_FSIFordMotorCreditCompanyMember" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIFordMotorCreditCompanyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaycheckProtectionProgramMember" xlink:label="loc_FSIPaycheckProtectionProgramMember" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIPaycheckProtectionProgramMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockYardsBankTrustMember" xlink:label="loc_FSIStockYardsBankTrustMember" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_deiLegalEntityAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NanoChemSolutionsIncMember" xlink:label="loc_FSINanoChemSolutionsIncMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSINanoChemSolutionsIncMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpInvestmentsLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_NanoChemSolutionIncMember" xlink:label="loc_FSINanoChemSolutionIncMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSINanoChemSolutionIncMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpRealtyLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="loc_us-gaapVariableRateAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_us-gaapVariableRateAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaapVariableRateDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapVariableRateAxis" xlink:to="loc_us-gaapVariableRateDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrimeRateMember" xlink:label="loc_us-gaapPrimeRateMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapVariableRateDomain" xlink:to="loc_us-gaapPrimeRateMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" xlink:label="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShortTermDebtTable" xlink:to="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" order="50" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain" xlink:label="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankAxis" xlink:to="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_FederalHomeLoanBankOfCincinnatiMember" xlink:label="loc_srtFederalHomeLoanBankOfCincinnatiMember" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtFederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain" xlink:to="loc_srtFederalHomeLoanBankOfCincinnatiMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaapDebtInstrumentFaceAmount" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentFaceAmount" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentTerm" xlink:label="loc_us-gaapDebtInstrumentTerm" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentTerm" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_PaymentOfMonthlyInstallmentsInterestRate" xlink:label="loc_FSIPaymentOfMonthlyInstallmentsInterestRate" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_FSIPaymentOfMonthlyInstallmentsInterestRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="loc_us-gaapDebtInstrumentPeriodicPayment" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentPeriodicPayment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestExpenseDebt" xlink:label="loc_us-gaapInterestExpenseDebt" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapInterestExpenseDebt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateStatedPercentage" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDefaultLongtermDebtAmount" xlink:label="loc_us-gaapDebtDefaultLongtermDebtAmount" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtDefaultLongtermDebtAmount" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative" xlink:title="00000069 - Disclosure - CONVERTIBLE NOTE PAYABLE (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_deiLegalEntityAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="loc_deiEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiLegalEntityAxis" xlink:to="loc_deiEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpInvestmentsLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="loc_srtConsolidatedEntitiesAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtConsolidatedEntitiesAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="loc_srtConsolidatedEntitiesDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtConsolidatedEntitiesAxis" xlink:to="loc_srtConsolidatedEntitiesDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ParentCompanyMember" xlink:label="loc_srtParentCompanyMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtConsolidatedEntitiesDomain" xlink:to="loc_srtParentCompanyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConvertibleNotesPayable" xlink:label="loc_us-gaapConvertibleNotesPayable" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapConvertibleNotesPayable" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentRate" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentRate" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentSharesIssued1" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentSharesIssued1" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentSharesIssued1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:label="loc_us-gaapDebtConversionConvertedInstrumentAmount1" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtConversionConvertedInstrumentAmount1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtInstrumentIncreaseAccruedInterest" xlink:label="loc_us-gaapDebtInstrumentIncreaseAccruedInterest" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtInstrumentIncreaseAccruedInterest" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:title="00000070 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentFederalTaxExpenseBenefit" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapCurrentFederalTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentStateAndLocalTaxExpenseBenefit" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapCurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentForeignTaxExpenseBenefit" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapCurrentForeignTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentIncomeTaxExpenseBenefit" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapCurrentIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredFederalIncomeTaxExpenseBenefit" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredFederalIncomeTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredStateAndLocalIncomeTaxExpenseBenefit" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredForeignIncomeTaxExpenseBenefit" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredForeignIncomeTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:title="00000071 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ExpectedIncomeTaxRecovery" xlink:label="loc_FSIExpectedIncomeTaxRecovery" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_FSIExpectedIncomeTaxRecovery" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:label="loc_us-gaapIncomeTaxReconciliationNondeductibleExpense" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxReconciliationNondeductibleExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaapIncomeTaxReconciliationOtherAdjustments" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxReconciliationOtherAdjustments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate" xlink:label="loc_us-gaapIncomeTaxReconciliationChangeInEnactedTaxRate" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxReconciliationChangeInEnactedTaxRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaapIncomeTaxReconciliationForeignIncomeTaxRateDifferential" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaapIncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentIncomeTaxExpenseBenefit" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapCurrentIncomeTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:title="00000072 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaapOperatingLossCarryforwardsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapOperatingLossCarryforwardsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapOperatingLossCarryforwardsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InternalRevenueServiceIRSMember" xlink:label="loc_us-gaapInternalRevenueServiceIRSMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapInternalRevenueServiceIRSMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="loc_us-gaapDeferredTaxAssetsOperatingLossCarryforwards" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsOperatingLossCarryforwards" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:label="loc_us-gaapDeferredTaxAssetsGoodwillAndIntangibleAssets" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetsPropertyPlantsAndEquipment" xlink:label="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipment" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsDerivativeInstruments" xlink:label="loc_us-gaapDeferredTaxAssetsDerivativeInstruments" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsDerivativeInstruments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetsLiabilitiesGross" xlink:label="loc_FSIDeferredTaxAssetsLiabilitiesGross" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetsLiabilitiesGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaapDeferredTaxAssetsValuationAllowance" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsValuationAllowance" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetNet" xlink:label="loc_FSIDeferredTaxAssetNet" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsInvestments" xlink:label="loc_us-gaapDeferredTaxAssetsInvestments" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsInvestments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne" xlink:label="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipmentOne" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipmentOne" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetNotRecognized" xlink:label="loc_FSIDeferredTaxAssetNotRecognized" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetNotRecognized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_DeferredTaxAssetLiabilitiesNet" xlink:label="loc_FSIDeferredTaxAssetLiabilitiesNet" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetLiabilitiesNet" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:title="00000073 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaapOperatingLossCarryforwardsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapOperatingLossCarryforwardsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapOperatingLossCarryforwardsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxPeriodAxis" xlink:label="loc_us-gaapTaxPeriodAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapTaxPeriodAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaapTaxPeriodDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodAxis" xlink:to="loc_us-gaapTaxPeriodDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandTwentyNineTaxYearMember" xlink:label="loc_FSITwoThousandTwentyNineTaxYearMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandTwentyNineTaxYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyTaxYearMember" xlink:label="loc_FSITwoThousandThirtyTaxYearMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyTaxYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyOneTaxYearMember" xlink:label="loc_FSITwoThousandThirtyOneTaxYearMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyOneTaxYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtySevenTaxYearMember" xlink:label="loc_FSITwoThousandThirtySevenTaxYearMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtySevenTaxYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyEightTaxYearMember" xlink:label="loc_FSITwoThousandThirtyEightTaxYearMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyEightTaxYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandThirtyNineTaxYearMember" xlink:label="loc_FSITwoThousandThirtyNineTaxYearMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyNineTaxYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandFortyTaxYearMember" xlink:label="loc_FSITwoThousandFortyTaxYearMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandFortyTaxYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_TwoThousandFortyOneTaxYearMember" xlink:label="loc_FSITwoThousandFortyOneTaxYearMember" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandFortyOneTaxYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaapOperatingLossCarryforwards" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwards" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:title="00000074 - Disclosure - INCOME TAXES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaapOperatingLossCarryforwardsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapOperatingLossCarryforwardsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapOperatingLossCarryforwardsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaapOperatingLossCarryforwards" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwards" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:title="00000075 - Disclosure - SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasicAndDiluted" xlink:label="loc_us-gaapEarningsPerShareBasicAndDiluted" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapEarningsPerShareBasicAndDiluted" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" xlink:title="00000076 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:title="00000077 - Disclosure - INCOME PER SHARE (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaapOperatingLossCarryforwardsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapOperatingLossCarryforwardsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapOperatingLossCarryforwardsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaapPreferredStockSharesIssued" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapPreferredStockSharesIssued" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaapPreferredStockSharesOutstanding" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapPreferredStockSharesOutstanding" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:title="00000078 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_srtRangeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_2" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" xlink:label="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_FSISharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="loc_us-gaapSharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapSharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:title="00000079 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:title="00000080 - Disclosure - STOCK OPTIONS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:label="loc_us-gaapScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:label="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:to="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srtTitleOfIndividualAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:to="loc_srtTitleOfIndividualAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ConsultantsMember" xlink:label="loc_FSIConsultantsMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_FSIConsultantsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EmployeesMember" xlink:label="loc_FSIEmployeesMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_FSIEmployeesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockOptionPlanExpense" xlink:label="loc_us-gaapStockOptionPlanExpense" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapStockOptionPlanExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_AdditionalExpensesDueToOptionsGranted" xlink:label="loc_FSIAdditionalExpensesDueToOptionsGranted" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_FSIAdditionalExpensesDueToOptionsGranted" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:title="00000081 - Disclosure - CAPITAL STOCK (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OffsettingAssetsTable" xlink:label="loc_us-gaapOffsettingAssetsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapOffsettingAssetsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OffsettingAssetsLineItems" xlink:label="loc_us-gaapOffsettingAssetsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOffsettingAssetsTable" xlink:to="loc_us-gaapOffsettingAssetsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaapDerivativeInstrumentRiskAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOffsettingAssetsTable" xlink:to="loc_us-gaapDerivativeInstrumentRiskAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EmployeesStockOptionMember" xlink:label="loc_FSIEmployeesStockOptionMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_FSIEmployeesStockOptionMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ConsultantsStockOptionsMember" xlink:label="loc_FSIConsultantsStockOptionsMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_FSIConsultantsStockOptionsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOffsettingAssetsLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:title="00000082 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestAbstract" xlink:label="loc_us-gaapNoncontrollingInterestAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncontrollingInterestAbstract" xlink:to="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_srtOwnershipAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpnvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaapTypeOfArrangementAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_us-gaapTypeOfArrangementAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTypeOfArrangementAxis" xlink:to="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_OwnershipInterestPurchaseAgreementMember" xlink:label="loc_FSIOwnershipInterestPurchaseAgreementMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" xlink:to="loc_FSIOwnershipInterestPurchaseAgreementMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="loc_us-gaapMinorityInterest" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapMinorityInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:label="loc_us-gaapMinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapMinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapNetIncomeLossAttributableToNoncontrollingInterest" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapNetIncomeLossAttributableToNoncontrollingInterest" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="loc_us-gaapMinorityInterest_2" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapMinorityInterest_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:title="00000083 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestAbstract" xlink:label="loc_us-gaapNoncontrollingInterestAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncontrollingInterestAbstract" xlink:to="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_srtOwnershipAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpnvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EnpInvestmentMember" xlink:label="loc_FSIEnpInvestmentMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpInvestmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" xlink:label="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByParent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByParent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="loc_us-gaapPaymentsToMinorityShareholders" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapPaymentsToMinorityShareholders" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapAccountsReceivableNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:title="00000084 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:label="loc_us-gaapScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract" xlink:to="loc_us-gaapScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:label="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:to="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:to="loc_srtProductOrServiceAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EWCPMember" xlink:label="loc_FSIEWCPMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_FSIEWCPMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_BCPAMember" xlink:label="loc_FSIBCPAMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_FSIBCPAMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CorporateAndOtherMember" xlink:label="loc_us-gaapCorporateAndOtherMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_us-gaapCorporateAndOtherMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaapInterestExpense" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapInterestExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationNonproduction" xlink:label="loc_us-gaapDepreciationNonproduction" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapDepreciationNonproduction" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapProfitLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_Segmentassets" xlink:label="loc_FSISegmentassets" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_FSISegmentassets" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:title="00000085 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract" xlink:to="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="loc_srtStatementGeographicalAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_CA" xlink:label="loc_countryCA" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryCA" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_UnitedStatesandAbroadMember" xlink:label="loc_FSIUnitedStatesandAbroadMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_FSIUnitedStatesandAbroadMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails" xlink:title="00000086 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract" xlink:to="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="loc_srtStatementGeographicalAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_CA" xlink:label="loc_countryCA" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryCA" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="loc_countryUS" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryUS" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncurrentAssets" xlink:label="loc_us-gaapNoncurrentAssets" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:to="loc_us-gaapNoncurrentAssets" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:title="00000087 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:label="loc_us-gaapScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract" xlink:to="loc_us-gaapScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EntityWideRevenueMajorCustomerLineItems" xlink:label="loc_us-gaapEntityWideRevenueMajorCustomerLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:to="loc_us-gaapEntityWideRevenueMajorCustomerLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaapConcentrationRiskByBenchmarkAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:to="loc_us-gaapConcentrationRiskByBenchmarkAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaapAccountsReceivableMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapAccountsReceivableMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srtMajorCustomersAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:to="loc_srtMajorCustomersAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srtNameOfMajorCustomerDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtMajorCustomersAxis" xlink:to="loc_srtNameOfMajorCustomerDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_ThreeCustomersMember" xlink:label="loc_FSIThreeCustomersMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_FSIThreeCustomersMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideRevenueMajorCustomerLineItems" xlink:to="loc_us-gaapAccountsReceivableNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_StockOptionExercisePercent" xlink:label="loc_FSIStockOptionExercisePercent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideRevenueMajorCustomerLineItems" xlink:to="loc_FSIStockOptionExercisePercent" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:title="00000088 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaapSubsequentEventsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTable" xlink:label="loc_us-gaapSubsequentEventTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventsAbstract" xlink:to="loc_us-gaapSubsequentEventTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventLineItems" xlink:label="loc_us-gaapSubsequentEventLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventTable" xlink:to="loc_us-gaapSubsequentEventLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srtTitleOfIndividualAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventTable" xlink:to="loc_srtTitleOfIndividualAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_EmployeeMember" xlink:label="loc_FSIEmployeeMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_FSIEmployeeMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaapSubsequentEventTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventTable" xlink:to="loc_us-gaapSubsequentEventTypeAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaapSubsequentEventTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventTypeAxis" xlink:to="loc_us-gaapSubsequentEventTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaapSubsequentEventMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventTypeDomain" xlink:to="loc_us-gaapSubsequentEventMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="loc_us-gaapTypeOfArrangementAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventTable" xlink:to="loc_us-gaapTypeOfArrangementAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTypeOfArrangementAxis" xlink:to="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20211231.xsd#FSI_UponExerciseofStockOptionsMember" xlink:label="loc_FSIUponExerciseofStockOptionsMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapArrangementsAndNonarrangementTransactionsMember" xlink:to="loc_FSIUponExerciseofStockOptionsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<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.1</span><table class="report" border="0" cellspacing="2" id="idm140440195110296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Mar. 29, 2022</div></th>
<th class="th"><div>Jun. 30, 2021</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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" 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">10-K/A<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AmendmentDescription', window );">Amendment Description</a></td>
<td class="text">The purpose of the amendment
is to correct Exhibit 23.1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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">Dec. 31,  2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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">001-31540<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" 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">FLEXIBLE
SOLUTIONS INTERNATIONAL, INC.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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">0001069394<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" 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">71-1630889<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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 or Country Code</a></td>
<td class="text">A0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" 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 One</a></td>
<td class="text">6001
    54 Ave.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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">Taber<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressCountry', window );">Entity Address, Country</a></td>
<td class="text">CA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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">T1G
    1X4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" 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">(403)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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">223-2995<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common
    Stock, $0.001 par value<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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">FSI<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" 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">NYSE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30,491,533<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,375,746<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Smythe LLP<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">995<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Vancouver,
Canada<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentDescription">
<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>Description of changes contained within amended document.</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_AmendmentDescription</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_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_AuditorFirmId">
<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>PCAOB issued Audit Firm Identifier</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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_AuditorFirmId</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:nonemptySequenceNumberItemType</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_AuditorLocation">
<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 );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_AuditorLocation</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:internationalNameItemType</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_AuditorName">
<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 );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_AuditorName</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:internationalNameItemType</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_CurrentFiscalYearEndDate">
<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>End date of current fiscal year in the format --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_CurrentFiscalYearEndDate</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:gMonthDayItemType</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_DocumentAnnualReport">
<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 only for a form used as an annual report.</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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_DocumentAnnualReport</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_DocumentFiscalPeriodFocus">
<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>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</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_DocumentFiscalPeriodFocus</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:fiscalPeriodItemType</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_DocumentFiscalYearFocus">
<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>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</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_DocumentFiscalYearFocus</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:gYearItemType</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_DocumentTransitionReport">
<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 only for a form used as a transition report.</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 Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-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_DocumentTransitionReport</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_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_EntityAddressCountry">
<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>ISO 3166-1 alpha-2 country 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_EntityAddressCountry</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:countryCodeItemType</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_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_EntityCommonStockSharesOutstanding">
<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 number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</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_EntityCommonStockSharesOutstanding</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:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<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 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</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_EntityCurrentReportingStatus</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:yesNoItemType</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_EntityFilerCategory">
<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 whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</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_EntityFilerCategory</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:filerCategoryItemType</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_EntityInteractiveDataCurrent">
<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 registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</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 Regulation S-T<br> -Number 232<br> -Section 405<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_EntityInteractiveDataCurrent</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:yesNoItemType</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_EntityPublicFloat">
<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 aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</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_EntityPublicFloat</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:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_EntityShellCompany">
<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 registrant is a shell company as defined in Rule 12b-2 of 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 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_EntityShellCompany</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_EntitySmallBusiness">
<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>Indicates that the company is a Smaller Reporting Company (SRC).</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_EntitySmallBusiness</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_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_EntityVoluntaryFilers">
<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 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</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_EntityVoluntaryFilers</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:yesNoItemType</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_EntityWellKnownSeasonedIssuer">
<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 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</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 405<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_EntityWellKnownSeasonedIssuer</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:yesNoItemType</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_IcfrAuditorAttestationFlag">
<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 );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_IcfrAuditorAttestationFlag</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_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_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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>R2.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440193576456">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_AssetsCurrentAbstract', window );"><strong>Current</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Cash', window );">Cash</a></td>
<td class="nump">$ 5,710,227<span></span>
</td>
<td class="nump">$ 3,472,776<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepositsAssetsCurrent', window );">Term deposits</a></td>
<td class="nump">1,025,347<span></span>
</td>
<td class="nump">1,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable (Note 4)</a></td>
<td class="nump">7,129,329<span></span>
</td>
<td class="nump">5,889,813<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories (Note 5)</a></td>
<td class="nump">9,502,005<span></span>
</td>
<td class="nump">8,372,476<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">442,161<span></span>
</td>
<td class="nump">302,447<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">23,809,069<span></span>
</td>
<td class="nump">19,037,512<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, equipment and leaseholds, net (Note 6)</a></td>
<td class="nump">4,931,713<span></span>
</td>
<td class="nump">5,142,041<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_FiniteLivedPatentGross', window );">Patents (Note 7)</a></td>
<td class="nump">13,699<span></span>
</td>
<td class="nump">30,137<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right of use assets (Note 3)</a></td>
<td class="nump">217,267<span></span>
</td>
<td class="nump">483,113<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets (Note 8)</a></td>
<td class="nump">2,600,000<span></span>
</td>
<td class="nump">2,776,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepositsAssetsNoncurrent', window );">Long term deposits (Note 9)</a></td>
<td class="nump">8,540<span></span>
</td>
<td class="nump">8,540<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Investments (Note 10)</a></td>
<td class="nump">5,424,010<span></span>
</td>
<td class="nump">4,776,167<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill (Note 8)</a></td>
<td class="nump">2,534,275<span></span>
</td>
<td class="nump">2,534,275<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred tax asset (Note 14)</a></td>
<td class="nump">12,697<span></span>
</td>
<td class="nump">299,603<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total Assets</a></td>
<td class="nump">39,551,270<span></span>
</td>
<td class="nump">35,087,388<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_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">1,283,486<span></span>
</td>
<td class="nump">558,105<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">457,062<span></span>
</td>
<td class="nump">1,225,804<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredRevenueCurrent', window );">Deferred revenue</a></td>
<td class="nump">349,004<span></span>
</td>
<td class="nump">314,277<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxesPayableCurrent', window );">Income taxes payable</a></td>
<td class="nump">4,561,396<span></span>
</td>
<td class="nump">2,540,348<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Short term line of credit (Note 11)</a></td>
<td class="nump">2,300,819<span></span>
</td>
<td class="nump">2,116,073<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Current portion of lease liability (Note 3)</a></td>
<td class="nump">77,715<span></span>
</td>
<td class="nump">287,900<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Current portion of long term debt (Note 12)</a></td>
<td class="nump">793,574<span></span>
</td>
<td class="nump">848,794<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">9,823,056<span></span>
</td>
<td class="nump">7,891,301<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Lease liability (Note 3)</a></td>
<td class="nump">139,552<span></span>
</td>
<td class="nump">195,213<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income tax liability (Note 14)</a></td>
<td class="nump">310,162<span></span>
</td>
<td class="nump">233,751<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long term debt (Note 12)</a></td>
<td class="nump">1,573,024<span></span>
</td>
<td class="nump">2,998,844<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total Liabilities</a></td>
<td class="nump">11,845,794<span></span>
</td>
<td class="nump">11,319,109<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_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders&#8217; Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Capital stock (Note 17) Authorized: 50,000,000 common shares with a par value of $0.001 each; 1,000,000 preferred shares with a par value of $0.01 each Issued and outstanding: 12,355,246 (2020: 12,260,545) common shares</a></td>
<td class="nump">12,355<span></span>
</td>
<td class="nump">12,261<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Capital in excess of par value</a></td>
<td class="nump">16,983,648<span></span>
</td>
<td class="nump">16,633,190<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive loss</a></td>
<td class="num">(775,730)<span></span>
</td>
<td class="num">(872,121)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Accumulated earnings</a></td>
<td class="nump">8,882,360<span></span>
</td>
<td class="nump">5,433,198<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders&#8217; equity &#8211; controlling interest</a></td>
<td class="nump">25,102,633<span></span>
</td>
<td class="nump">21,206,528<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Non-controlling interests (Note 18)</a></td>
<td class="nump">2,602,843<span></span>
</td>
<td class="nump">2,561,751<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Total Stockholders&#8217; Equity</a></td>
<td class="nump">27,705,476<span></span>
</td>
<td class="nump">23,768,279<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total Liabilities and Stockholders&#8217; Equity</a></td>
<td class="nump">$ 39,551,270<span></span>
</td>
<td class="nump">$ 35,087,388<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_FiniteLivedPatentGross">
<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>Finite lived patent gross.</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;">FSI_FiniteLivedPatentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<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>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<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>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<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;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<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>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<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>Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669686-108580<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=d3e681-108580<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;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<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>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<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>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<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;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<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>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6801-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<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;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<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 );">- References</a><div><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;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_Cash">
<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>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 210<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118262064&amp;loc=SL116631418-115840<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 210<br> -Section 45<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=118262064&amp;loc=SL116631419-115840<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;">us-gaap_Cash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<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>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<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>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<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;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<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>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<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;">us-gaap_DeferredIncomeTaxLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueCurrent">
<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>Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_DeferredRevenueCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepositsAssetsCurrent">
<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>Carrying value of amounts transferred to third parties for security purposes that are expected to be returned or applied towards payment within one year or during the operating cycle, if shorter.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_DepositsAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepositsAssetsNoncurrent">
<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>Carrying value of amounts transferred to third parties for security purposes that are expected to be returned or applied towards payment after one year or beyond the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_DepositsAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestments">
<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>This item represents the carrying amount on the entity's balance sheet of its investment in common stock of an equity method investee. This is not an indicator of the fair value of the investment, rather it is the initial cost adjusted for the entity's share of earnings and losses of the investee, adjusted for any distributions (dividends) and other than temporary impairment (OTTI) losses recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8813-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_EquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<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>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<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;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<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>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<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;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<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>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<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>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<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;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<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>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<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;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<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>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<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 );">- References</a><div><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;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_LinesOfCreditCurrent">
<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 carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LinesOfCreditCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtCurrent">
<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>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<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>Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterest">
<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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which is directly or indirectly attributable to that ownership interest in subsidiary equity which is not attributable to the parent (that is, noncontrolling interest, previously referred to as minority interest).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.31)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<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;">us-gaap_MinorityInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<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>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<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>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<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>Amount of lessee's right to use underlying asset under operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseCurrent">
<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>Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6787-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6387103&amp;loc=d3e6435-108320<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 10<br> -Section 05<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123349782&amp;loc=d3e5879-108316<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;">us-gaap_PrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<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>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<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 cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<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;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<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 );">- References</a><div><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;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<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>Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21930-107793<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21914-107793<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568740-111683<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21711-107793<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4590271-111686<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 24: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568447-111683<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Publisher FASB<br> -Subparagraph (a)(3)(iii)(03)<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;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxesPayableCurrent">
<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>Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_TaxesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R3.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440192291832">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - $ / shares<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized</a></td>
<td class="nump">50,000,000<span></span>
</td>
<td class="nump">50,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value</a></td>
<td class="nump">$ 0.001<span></span>
</td>
<td class="nump">$ 0.001<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized</a></td>
<td class="nump">1,000,000<span></span>
</td>
<td class="nump">1,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued</a></td>
<td class="nump">12,355,246<span></span>
</td>
<td class="nump">12,260,545<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding</a></td>
<td class="nump">12,355,246<span></span>
</td>
<td class="nump">12,260,545<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<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>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<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 maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<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>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<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>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<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>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496158-112644<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;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<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 maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<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 );">- References</a><div><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;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R4.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440193643208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Income and Comprehensive Income - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">$ 34,416,335<span></span>
</td>
<td class="nump">$ 31,407,454<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales (Note 6, 7 &amp; 8)</a></td>
<td class="nump">23,019,824<span></span>
</td>
<td class="nump">21,641,035<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">11,396,511<span></span>
</td>
<td class="nump">9,766,419<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_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating Expenses</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalariesAndWages', window );">Wages</a></td>
<td class="nump">2,321,285<span></span>
</td>
<td class="nump">2,169,825<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OfficersCompensation', window );">Administrative salaries and benefits</a></td>
<td class="nump">883,460<span></span>
</td>
<td class="nump">804,272<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralInsuranceExpense', window );">Insurance</a></td>
<td class="nump">581,187<span></span>
</td>
<td class="nump">479,218<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Lease expense</a></td>
<td class="nump">382,663<span></span>
</td>
<td class="nump">453,639<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_Consulting', window );">Consulting</a></td>
<td class="nump">320,759<span></span>
</td>
<td class="nump">277,277<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfessionalFees', window );">Professional fees</a></td>
<td class="nump">285,424<span></span>
</td>
<td class="nump">283,842<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherGeneralExpense', window );">Office and miscellaneous</a></td>
<td class="nump">269,459<span></span>
</td>
<td class="nump">250,330<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_InterestExpenses', window );">Interest expense</a></td>
<td class="nump">199,930<span></span>
</td>
<td class="nump">260,657<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Advertising and promotion</a></td>
<td class="nump">172,185<span></span>
</td>
<td class="nump">197,196<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research</a></td>
<td class="nump">116,411<span></span>
</td>
<td class="nump">81,422<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TravelAndEntertainmentExpense', window );">Travel</a></td>
<td class="nump">107,894<span></span>
</td>
<td class="nump">95,053<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_InvestorRelationsAndTransferAgentFee', window );">Investor relations and transfer agent fee</a></td>
<td class="nump">94,256<span></span>
</td>
<td class="nump">78,930<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_Commissions', window );">Commissions</a></td>
<td class="nump">62,632<span></span>
</td>
<td class="nump">148,922<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommunicationsAndInformationTechnology', window );">Telecommunications</a></td>
<td class="nump">45,482<span></span>
</td>
<td class="nump">43,535<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Currency exchange</a></td>
<td class="nump">25,091<span></span>
</td>
<td class="num">(6,890)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UtilitiesOperatingExpense', window );">Utilities</a></td>
<td class="nump">21,523<span></span>
</td>
<td class="nump">17,651<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ShippingCost', window );">Shipping</a></td>
<td class="nump">16,567<span></span>
</td>
<td class="nump">12,839<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Bad debt expense</a></td>
<td class="nump">6,979<span></span>
</td>
<td class="nump">1,016<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">5,913,187<span></span>
</td>
<td class="nump">5,648,734<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">5,483,324<span></span>
</td>
<td class="nump">4,117,685<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Gain on sale of equipment (Note 6)</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">9,490<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_GainLossOnSaleOfLand', window );">Gain on sale of land (Note 6)</a></td>
<td class="nump">44,330<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_PppLoanForgiveness', window );">PPP loan forgiveness (Note 12)</a></td>
<td class="nump">537,960<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnInvestments', window );">Gain on investments (Note 10)</a></td>
<td class="nump">507,143<span></span>
</td>
<td class="nump">877,358<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_GainOnAcquisition', window );">Gain on acquisition of ENP Realty (Note 10)</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">133,341<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentIncomeInterest', window );">Interest income</a></td>
<td class="nump">77,999<span></span>
</td>
<td class="nump">53,101<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income tax</a></td>
<td class="nump">6,650,756<span></span>
</td>
<td class="nump">5,190,975<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_us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract', window );"><strong>Income taxes (Note 14)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax expense</a></td>
<td class="num">(363,317)<span></span>
</td>
<td class="num">(409,553)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current income tax expense</a></td>
<td class="num">(1,993,182)<span></span>
</td>
<td class="num">(1,197,888)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">4,294,257<span></span>
</td>
<td class="nump">3,583,534<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest', window );">Net income attributable to non-controlling interests</a></td>
<td class="num">(845,095)<span></span>
</td>
<td class="num">(606,484)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to controlling interest</a></td>
<td class="nump">$ 3,449,162<span></span>
</td>
<td class="nump">$ 2,977,050<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAndDiluted', window );">Income per share (basic and diluted) (Note 15)</a></td>
<td class="nump">$ 0.28<span></span>
</td>
<td class="nump">$ 0.24<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average number of common shares (basic)</a></td>
<td class="nump">12,316,254<span></span>
</td>
<td class="nump">12,240,641<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average number of common shares (diluted)</a></td>
<td class="nump">12,505,522<span></span>
</td>
<td class="nump">12,302,552<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_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract', window );"><strong>Other comprehensive income:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Unrealized gain on foreign currency transactions</a></td>
<td class="nump">$ 96,391<span></span>
</td>
<td class="nump">$ 122,489<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest', window );">Total comprehensive income</a></td>
<td class="nump">4,390,648<span></span>
</td>
<td class="nump">3,706,023<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest', window );">Comprehensive income &#8211; non-controlling interest</a></td>
<td class="num">(845,095)<span></span>
</td>
<td class="num">(606,484)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive income attributable to controlling interests</a></td>
<td class="nump">$ 3,545,553<span></span>
</td>
<td class="nump">$ 3,099,539<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_Commissions">
<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>Commissions.</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;">FSI_Commissions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_Consulting">
<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>Consulting.</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;">FSI_Consulting</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_GainLossOnSaleOfLand">
<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>Gain loss on sale of land</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;">FSI_GainLossOnSaleOfLand</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_FSI_GainOnAcquisition">
<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>Gain on acquisition</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;">FSI_GainOnAcquisition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_FSI_InterestExpenses">
<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>Interest expenses.</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;">FSI_InterestExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_InvestorRelationsAndTransferAgentFee">
<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>Investor relations and transfer agent fee.</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;">FSI_InvestorRelationsAndTransferAgentFee</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_PppLoanForgiveness">
<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>Ppp loan forgiveness.</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;">FSI_PppLoanForgiveness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_FSI_ShippingCost">
<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>Shipping cost.</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;">FSI_ShippingCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_CommunicationsAndInformationTechnology">
<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 amount of expense in the period for communications and data processing expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_CommunicationsAndInformationTechnology</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ComprehensiveIncomeNetOfTax">
<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>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=d3e557-108580<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<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;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest">
<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>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income (loss) and other comprehensive income (loss), attributable to noncontrolling interests. Excludes changes in equity resulting from investments by owners and distributions to owners.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4613674-111683<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569643-111683<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;">us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest">
<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>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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;">us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_CostOfGoodsAndServicesSold">
<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 aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_CurrentIncomeTaxExpenseBenefit">
<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>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<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;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredIncomeTaxExpenseBenefit">
<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>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract">
<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 );">- References</a><div><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;">us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_EarningsPerShareBasicAndDiluted">
<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 amount of net income or loss for the period per each share in instances when basic and diluted earnings per share are the same amount and reported as a single line item on the face of the financial statements.  Basic earnings per share is the amount of net income or loss for the period per each share of common stock or unit outstanding during the reporting period.  Diluted earnings per share includes the amount of net income or loss for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<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;">us-gaap_EarningsPerShareBasicAndDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax">
<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>Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=125521441&amp;loc=d3e30690-110894<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 35<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123602790&amp;loc=d3e30226-110892<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=120253306&amp;loc=d3e28228-110885<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124440516&amp;loc=d3e30840-110895<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;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_GainLossOnInvestments">
<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>Amount of realized and unrealized gain (loss) on investment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123581744&amp;loc=d3e27405-111563<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7(c),9(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 3: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_GainLossOnInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<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>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_GeneralInsuranceExpense">
<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 expense in the period incurred with respect to protection provided by insurance entities against risks other than risks associated with production (which are allocated to cost of sales).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_GeneralInsuranceExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_GrossProfit">
<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>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<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;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<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>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123384075&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncomeStatementAbstract">
<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 );">- References</a><div><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;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_InvestmentIncomeInterest">
<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>Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<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;">us-gaap_InvestmentIncomeInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_NetIncomeLoss">
<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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest">
<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>Amount of Net Income (Loss) attributable to noncontrolling interest.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<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;">us-gaap_NetIncomeLossAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_OfficersCompensation">
<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>Amount of expense for salary and wage arising from service rendered by officer. Excludes allocated cost, labor-related nonsalary expense, and direct and overhead labor cost included in cost of good and service sold.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_OfficersCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_OperatingExpenses">
<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>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</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;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_OperatingExpensesAbstract">
<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 );">- References</a><div><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;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_OperatingIncomeLoss">
<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 net result for the period of deducting operating expenses from operating revenues.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<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;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_OperatingLeaseExpense">
<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>Amount of operating lease expense. Excludes sublease income.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<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;">us-gaap_OperatingLeaseExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<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>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669646-108580<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;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract">
<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 );">- References</a><div><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;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_OtherGeneralExpense">
<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>Amount of general expenses not normally included in Other Operating Costs and Expenses.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.6)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_OtherGeneralExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ProfessionalFees">
<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 fee charged for services from professionals such as doctors, lawyers and accountants. The term is often expanded to include other professions, for example, pharmacists charging to maintain a medicinal profile of a client or customer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07.2(a),(b),(c),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=120401555&amp;loc=SL114874292-224272<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 220<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (k)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433917&amp;loc=SL114874205-224268<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;">us-gaap_ProfessionalFees</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ProfitLoss">
<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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ProvisionForDoubtfulAccounts">
<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>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ResearchAndDevelopmentExpense">
<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 aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 730<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6472174&amp;loc=d3e58812-109433<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<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;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<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>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_SalariesAndWages">
<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>Amount of expense for salary and wage arising from service rendered by nonofficer employee. Excludes allocated cost, labor-related nonsalary expense, and direct and overhead labor cost included in cost of good and service sold.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_SalariesAndWages</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_SellingAndMarketingExpense">
<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 aggregate total amount of expenses directly related to the marketing or selling of products or services.</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;">us-gaap_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_TravelAndEntertainmentExpense">
<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>Expenses incurred for travel and entertainment during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_TravelAndEntertainmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_UtilitiesOperatingExpense">
<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>Amount of operating expense of regulated operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_UtilitiesOperatingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<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 average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1505-109256<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;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<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>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<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;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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>15
<FILENAME>R5.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440195142184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Operating activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income for the year</a></td>
<td class="nump">$ 4,294,257<span></span>
</td>
<td class="nump">$ 3,583,534<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_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock based compensation</a></td>
<td class="nump">210,112<span></span>
</td>
<td class="nump">156,012<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">965,935<span></span>
</td>
<td class="nump">851,672<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_LeaseRightOfUseFinancing', window );">Lease right of use financing</a></td>
<td class="nump">22,057<span></span>
</td>
<td class="nump">53,768<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetAmortization', window );">Lease right of use amortization</a></td>
<td class="nump">265,846<span></span>
</td>
<td class="nump">331,773<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_GainLossOnInvestment', window );">Gain on investments</a></td>
<td class="num">(507,143)<span></span>
</td>
<td class="num">(877,358)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_BadDebtExpense', window );">Bad debt expense</a></td>
<td class="nump">6,979<span></span>
</td>
<td class="nump">1,016<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax expense (recovery)</a></td>
<td class="nump">363,317<span></span>
</td>
<td class="nump">409,553<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Gain on sale of equipment</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(9,490)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_GainLossOnSaleOfLand', window );">Gain on sale of land</a></td>
<td class="num">(44,330)<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_PaycheckProtectionProgramLoanForgiveness', window );">PPP loan forgiveness</a></td>
<td class="num">(537,960)<span></span>
</td>
<td class="text"> <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_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in non-cash working capital items:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Increase in accounts receivable</a></td>
<td class="num">(1,246,495)<span></span>
</td>
<td class="num">(1,420,614)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">(Increase) decrease in inventories</a></td>
<td class="num">(1,275,746)<span></span>
</td>
<td class="nump">1,284,607<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidExpense', window );">Increase in prepaid expenses</a></td>
<td class="num">(139,714)<span></span>
</td>
<td class="num">(83,809)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Increase in accounts payable and accrued liabilities</a></td>
<td class="nump">102,856<span></span>
</td>
<td class="nump">553,478<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable', window );">Increase in taxes payable</a></td>
<td class="nump">2,021,048<span></span>
</td>
<td class="nump">770,243<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability', window );">Increase in deferred revenue</a></td>
<td class="nump">34,727<span></span>
</td>
<td class="nump">101,056<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Cash provided by operating activities</a></td>
<td class="nump">4,535,746<span></span>
</td>
<td class="nump">5,705,441<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_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Investing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromOtherDeposits', window );">Return of long term deposits</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">22,090<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireInvestments', window );">Purchase of investments</a></td>
<td class="num">(500,000)<span></span>
</td>
<td class="num">(3,152,025)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfEquityMethodInvestments', window );">Proceeds of equity investment distributions</a></td>
<td class="nump">359,300<span></span>
</td>
<td class="nump">972,295<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Acquisition of ENP Realty LLC</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">13,419<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment', window );">Sale of property and equipment</a></td>
<td class="nump">263,380<span></span>
</td>
<td class="nump">9,490<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchase of property and equipment</a></td>
<td class="num">(782,219)<span></span>
</td>
<td class="num">(1,080,598)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Cash used in investing activities</a></td>
<td class="num">(659,539)<span></span>
</td>
<td class="num">(3,215,329)<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_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Financing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit', window );">Advance (repayment) of short term line of credit</a></td>
<td class="nump">184,746<span></span>
</td>
<td class="num">(273,909)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebt', window );">Repayment of long term debt</a></td>
<td class="num">(943,080)<span></span>
</td>
<td class="num">(4,395,915)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfLongTermDebt', window );">Proceeds of long term debt</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">3,413,160<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsOfFinancingCosts', window );">Lease payments</a></td>
<td class="num">(287,903)<span></span>
</td>
<td class="num">(385,541)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfDebt', window );">Repayment of convertible note</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(500,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToMinorityShareholders', window );">Distribution to non-controlling interest</a></td>
<td class="num">(804,003)<span></span>
</td>
<td class="num">(594,882)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfCommonStock', window );">Sale of common stock</a></td>
<td class="nump">140,440<span></span>
</td>
<td class="nump">39,750<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Cash used in financing activities</a></td>
<td class="num">(1,709,800)<span></span>
</td>
<td class="num">(2,697,337)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Effect of exchange rate changes on cash</a></td>
<td class="nump">96,391<span></span>
</td>
<td class="nump">45,331<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Inflow (outflow) of cash</a></td>
<td class="nump">2,262,798<span></span>
</td>
<td class="num">(161,894)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash resources, beginning</a></td>
<td class="nump">4,472,776<span></span>
</td>
<td class="nump">4,634,670<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash resources, ending</a></td>
<td class="nump">6,735,574<span></span>
</td>
<td class="nump">4,472,776<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_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract', window );"><strong>Cash resources are comprised of:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">5,710,227<span></span>
</td>
<td class="nump">3,472,776<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermInvestments', window );">Term deposits</a></td>
<td class="nump">1,025,347<span></span>
</td>
<td class="nump">1,000,000<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_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental disclosure of cash flow information:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income taxes paid</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">464,026<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest paid</a></td>
<td class="nump">179,029<span></span>
</td>
<td class="nump">260,657<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities', window );">Inventory additions in accounts payable and accrued liabilities</a></td>
<td class="nump">$ 250,923<span></span>
</td>
<td class="nump">$ 397,140<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_BadDebtExpense">
<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>Bad debt expense.</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;">FSI_BadDebtExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_FSI_GainLossOnInvestment">
<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>Gain loss on investment.</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;">FSI_GainLossOnInvestment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_FSI_GainLossOnSaleOfLand">
<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>Gain loss on sale of land</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;">FSI_GainLossOnSaleOfLand</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities">
<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>Inventory additions in accounts payable and accrued liabilities</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;">FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_FSI_LeaseRightOfUseFinancing">
<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>Lease right of use financing.</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;">FSI_LeaseRightOfUseFinancing</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_PaycheckProtectionProgramLoanForgiveness">
<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>Paycheck protection program loan forgiveness.</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;">FSI_PaycheckProtectionProgramLoanForgiveness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<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 );">- References</a><div><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;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<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>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract">
<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 );">- References</a><div><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;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<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>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=SL98516268-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3044-108585<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;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<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>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<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;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredIncomeTaxExpenseBenefit">
<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>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DepreciationAndAmortization">
<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 current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_DepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<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>Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<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;">us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_FinanceLeaseRightOfUseAssetAmortization">
<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>Amount of amortization expense attributable to right-of-use asset from finance lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<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;">us-gaap_FinanceLeaseRightOfUseAssetAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<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>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncomeTaxesPaidNet">
<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 amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4297-108586<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;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities">
<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 increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncreaseDecreaseInAccountsReceivable">
<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 increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable">
<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 increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncreaseDecreaseInContractWithCustomerLiability">
<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>Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 310<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123371682&amp;loc=d3e55415-109406<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;">us-gaap_IncreaseDecreaseInContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncreaseDecreaseInInventories">
<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 increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<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 );">- References</a><div><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;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncreaseDecreaseInPrepaidExpense">
<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 increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInPrepaidExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_InterestPaidNet">
<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>Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4297-108586<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3367-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3536-108585<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;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<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>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<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;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<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 );">- References</a><div><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;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<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>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<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;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<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 );">- References</a><div><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;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<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>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</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_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<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 );">- References</a><div><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;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_PaymentsOfFinancingCosts">
<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 cash outflow for loan and debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<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;">us-gaap_PaymentsOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired">
<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 cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3213-108585<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;">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_PaymentsToAcquireInvestments">
<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 cash outflow associated with the purchase of all investments (debt, security, other) during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3213-108585<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;">us-gaap_PaymentsToAcquireInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<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 cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3213-108585<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;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_PaymentsToMinorityShareholders">
<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>Amount of cash outflow to a noncontrolling interest. Includes, but not limited to, reduction of noncontrolling interest ownership. Excludes dividends paid to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<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;">us-gaap_PaymentsToMinorityShareholders</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ProceedsFromIssuanceOfCommonStock">
<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 cash inflow from the additional capital contribution to the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3255-108585<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;">us-gaap_ProceedsFromIssuanceOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ProceedsFromIssuanceOfLongTermDebt">
<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 cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3255-108585<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;">us-gaap_ProceedsFromIssuanceOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ProceedsFromOtherDeposits">
<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>Amount of cash inflow for receipts of deposits classified as other.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3179-108585<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;">us-gaap_ProceedsFromOtherDeposits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit">
<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 net cash inflow or cash outflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with either short term or long term maturity that is collateralized (backed by pledge, mortgage or other lien in the entity's assets).</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;">us-gaap_ProceedsFromRepaymentsOfLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ProceedsFromSaleOfEquityMethodInvestments">
<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 cash inflow associated with the sale of equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3179-108585<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;">us-gaap_ProceedsFromSaleOfEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment">
<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>Amount of cash inflow for the sale of long-lived, physical assets used to produce goods and services and not intended for resale, classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3179-108585<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;">us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ProfitLoss">
<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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_RepaymentsOfDebt">
<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 cash outflow during the period from the repayment of aggregate short-term and long-term debt. Excludes payment of capital lease obligations.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<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;">us-gaap_RepaymentsOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_RepaymentsOfLongTermDebt">
<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 cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<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;">us-gaap_RepaymentsOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ShareBasedCompensation">
<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>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ShortTermInvestments">
<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>Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(1)(g))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_ShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<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 );">- References</a><div><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;">us-gaap_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R6.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440192682824">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statements of Stockholders' Equity - USD ($)<br></strong></div></th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Capital In Excess Of Par Value [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>AOCI Attributable to Parent [Member]</div></th>
<th class="th"><div>Parent [Member]</div></th>
<th class="th"><div>Noncontrolling Interest [Member]</div></th>
<th class="th"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Beginning balance, value at Dec. 31, 2019</a></td>
<td class="nump">$ 12,216<span></span>
</td>
<td class="nump">$ 16,437,473<span></span>
</td>
<td class="nump">$ 2,456,148<span></span>
</td>
<td class="num">$ (994,610)<span></span>
</td>
<td class="nump">$ 17,911,227<span></span>
</td>
<td class="nump">$ 2,550,149<span></span>
</td>
<td class="nump">$ 20,461,376<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance, shares at Dec. 31, 2019</a></td>
<td class="nump">12,215,545<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Translation adjustment</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">122,489<span></span>
</td>
<td class="nump">122,489<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">122,489<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">2,977,050<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">2,977,050<span></span>
</td>
<td class="nump">606,484<span></span>
</td>
<td class="nump">3,583,534<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Common stock issued</a></td>
<td class="nump">$ 45<span></span>
</td>
<td class="nump">39,705<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">39,750<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">39,750<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Common stock issued, shares</a></td>
<td class="nump">45,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders', window );">Distributions to noncontrolling interests</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(594,882)<span></span>
</td>
<td class="num">(594,882)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">156,012<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">156,012<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">156,012<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Ending balance, value at Dec. 31, 2020</a></td>
<td class="nump">$ 12,261<span></span>
</td>
<td class="nump">16,633,190<span></span>
</td>
<td class="nump">5,433,198<span></span>
</td>
<td class="num">(872,121)<span></span>
</td>
<td class="nump">21,206,528<span></span>
</td>
<td class="nump">2,561,751<span></span>
</td>
<td class="nump">23,768,279<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance, shares at Dec. 31, 2020</a></td>
<td class="nump">12,260,545<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Translation adjustment</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">96,391<span></span>
</td>
<td class="nump">96,391<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">96,391<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">3,449,162<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">3,449,162<span></span>
</td>
<td class="nump">845,095<span></span>
</td>
<td class="nump">4,294,257<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Common stock issued</a></td>
<td class="nump">$ 94<span></span>
</td>
<td class="nump">140,346<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">140,440<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">140,440<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Common stock issued, shares</a></td>
<td class="nump">94,701<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders', window );">Distributions to noncontrolling interests</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(804,003)<span></span>
</td>
<td class="num">(804,003)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">210,112<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">210,112<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">210,112<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Ending balance, value at Dec. 31, 2021</a></td>
<td class="nump">$ 12,355<span></span>
</td>
<td class="nump">$ 16,983,648<span></span>
</td>
<td class="nump">$ 8,882,360<span></span>
</td>
<td class="num">$ (775,730)<span></span>
</td>
<td class="nump">$ 25,102,633<span></span>
</td>
<td class="nump">$ 2,602,843<span></span>
</td>
<td class="nump">$ 27,705,476<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance, shares at Dec. 31, 2021</a></td>
<td class="nump">12,355,246<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<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>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=122142933&amp;loc=d3e11149-113907<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=122142933&amp;loc=d3e11178-113907<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123468992&amp;loc=d3e4534-113899<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;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders">
<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>Decrease in noncontrolling interest balance from payment of dividends or other distributions by the non-wholly owned subsidiary or partially owned entity, included in the consolidation of the parent entity, to the noncontrolling interest holders.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<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;">us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent">
<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>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569643-111683<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<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;">us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ProfitLoss">
<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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_SharesOutstanding">
<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>Number of shares issued which are neither cancelled nor held in the treasury.</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;">us-gaap_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues">
<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>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_StockIssuedDuringPeriodSharesNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_StockIssuedDuringPeriodValueNewIssues">
<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>Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_StockIssuedDuringPeriodValueNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<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>Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21930-107793<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21914-107793<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568740-111683<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21711-107793<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4590271-111686<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 24: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568447-111683<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Publisher FASB<br> -Subparagraph (a)(3)(iii)(03)<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;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R7.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196652696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock', window );">BASIS OF PRESENTATION</a></td>
<td class="text"><p id="xdx_80F_eus-gaap--BusinessDescriptionAndBasisOfPresentationTextBlock_zAb16u7W6BZ" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>1.
Basis of Presentation</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. <span style="display: none"><span id="xdx_82A_zw9r2219Sbl2">BASIS OF PRESENTATION</span></span></span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
consolidated financial statements include the accounts of Flexible Solutions International, Inc. (the &#8220;Company&#8221;), its wholly-owned
subsidiaries Flexible Fermentation Ltd. , NanoChem Solutions Inc. (&#8220;NanoChem&#8221;), Flexible Solutions Ltd., Flexible Biomass
LP, FS Biomass Inc., NCS Deferred Corp., Natural Chem SEZC Ltd., and InnFlex Holdings Inc. and its <span id="xdx_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20210101__20211231__srt--OwnershipAxis__custom--EnpInvestmentsLlcAndEnpMendotaMember_zrINb05I0R01" title="Subsidiary company ownership interest rate">65</span>% interest in ENP Investments, LLC
(&#8220;ENP Investments&#8221;) and ENP Mendota, LLC (&#8220;ENP Mendota&#8221;). All inter-company balances and transactions have been
eliminated upon consolidation. The Company was incorporated on May 12, 1998 in the State of Nevada and had no operations until June 30,
1998. In 2019, the Company redomiciled into Alberta, Canada.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
2018, NanoChem completed the purchase of a <span id="xdx_904_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20180101__20181231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zb9uYeATpRi9" title="Subsidiary company ownership interest rate">65</span>% interest in ENP Investments for an aggregate purchase price of $<span id="xdx_903_eus-gaap--BusinessCombinationConsiderationTransferred1_c20180101__20181231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Purchase price">5,110,560</span>. An unrelated
party owns the remaining <span id="xdx_90A_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--UnrelatedPartyMember_zkAMniuZWwli" title="Subsidiary company ownership interest rate">35</span>% interest in ENP Investments, and ENP Investments is consolidated into the financial statements. The outside
investor&#8217;s ownership interest in ENP Investments is included in noncontrolling interests in these consolidated financial statements
from the acquisition date onward. In 2020, ENP Investments increased its investment in ENP Realty from <span id="xdx_90E_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MinimumMember_zbJbDRB6MF6d" title="Subsidiary company ownership interest rate">24</span>% to <span id="xdx_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MaximumMember_zHbG3vIIoMHj" title="Subsidiary company ownership interest rate">100</span>%, making ENP Realty
a wholly-owned subsidiary of ENP Investments. In 2021, ENP Realty was renamed ENP Mendota and is consolidated into the financial statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company and its subsidiaries develop, manufacture and market specialty chemicals which slow the evaporation of water. One product, HEATSAVR&#174;,
is marketed for use in swimming pools and spas where its use, by slowing the evaporation of water, allows the water to retain a higher
temperature for a longer period of time and thereby reduces the energy required to maintain the desired temperature of the water in the
pool. Another product, WATERSAVR&#174;, is marketed for water conservation in irrigation canals, aquaculture, and reservoirs where its
use slows water loss due to evaporation. In addition to the water conservation products, the Company also manufactures and markets water-soluble
chemicals utilizing thermal polyaspartate biopolymers (hereinafter referred to as &#8220;TPAs&#8221;), which are beta-proteins manufactured
from the common biological amino acid, L-aspartic. TPAs can be formulated to prevent corrosion and scaling in water piping within the
petroleum, chemical, utility and mining industries. TPAs are also used as proteins to enhance fertilizers in improving crop yields and
can be used as additives for household laundry detergents, consumer care products and pesticides. The TPA division also manufactures
two nitrogen conservation products for agriculture that slows nitrogen loss from fields.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
outbreak of the novel strain of coronavirus, specifically identified as &#8220;COVID-19&#8221;, has resulted in a widespread health crisis
that has affected economies and financial markets around the world resulting in an economic downturn. This outbreak may also cause staff
shortages, reduced customer demand, increased government regulations or interventions, all of which may negatively impact the business,
financial condition or results of operations of the Company. The duration and impact of the COVID-19 outbreak is unknown at this time
and it is not possible to reliably estimate the length and severity of these developments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<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 );">- References</a><div><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;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock">
<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 entire disclosure for the business description and basis of presentation concepts.  Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity.  Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -URI http://asc.fasb.org/topic&amp;trid=2122149<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI http://asc.fasb.org/topic&amp;trid=2134479<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;">us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>18
<FILENAME>R8.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196774952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SIGNIFICANT ACCOUNTING POLICIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">SIGNIFICANT ACCOUNTING POLICIES</a></td>
<td class="text"><p id="xdx_80F_eus-gaap--SignificantAccountingPoliciesTextBlock_zRp9kDdyeS34" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>2.
<span>Significant Accounting Policies</span>. <b><span id="xdx_825_zEgljZhfD5sk" style="display: none">SIGNIFICANT ACCOUNTING POLICIES</span></b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
consolidated financial statements have been prepared on a historical cost basis, except where otherwise noted, in accordance with accounting
principles generally accepted in the United States applicable to a going concern and reflect the policies outlined below.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_847_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_z0fbKof6pB61" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)
<i><span id="xdx_866_zEIqvYh3ceg5">Cash and Cash Equivalents</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company considers all highly liquid investments purchased with an original or remaining maturity of less than three months at the date
of purchase to be cash equivalents. Cash and cash equivalents are maintained with several financial institutions.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84D_eus-gaap--InventoryPolicyTextBlock_z0ma3OFf0Aii" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
<i><span id="xdx_865_zEaoiY9TyXHb">Inventories and Cost of Sales</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has three major classes of inventory: completed goods, work in progress and raw materials and supplies. In all classes, inventories
are stated at the lower of cost and net realizable value. The Company applies the first-in, first-out or weighted average cost formulae
to inventories in different subsidiaries. Cost of sales includes all expenditures incurred in bringing the goods to the point of sale.
Inventory costs and costs of sales include direct costs of the raw material, inbound freight charges, warehousing costs, handling costs
(receiving and purchasing) and utilities and overhead expenses related to the Company&#8217;s manufacturing and processing facilities.
Shipping and handling charges billed to customers are included in revenue (2021 - $<span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zSVrag0rl4X3" title="Revenue from Contract with Customer, Excluding Assessed Tax">465,493</span>; 2020 &#8211; $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zmWn9LthbdCa" title="Revenue from Contract with Customer, Excluding Assessed Tax">427,920</span>). Shipping and handling
costs incurred are included in cost of goods sold (2021 - $<span id="xdx_900_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zB0aamnpVjB7" title="Cost of Goods and Services Sold">1,058,674</span>; 2020 &#8211; $<span id="xdx_903_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zgvfzDomXrC3" title="Cost of Goods and Services Sold">1,051,588</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_841_eus-gaap--PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_zvNHD6szx3G7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(c)
<i><span id="xdx_866_zyTwkWBDX9l">Allowance for Doubtful Accounts</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company provides an allowance for doubtful accounts when management estimates collectability to be uncertain. Accounts receivable are
continually reviewed to determine which, if any, accounts are doubtful of collection. In making the determination of the appropriate
allowance amount, the Company considers current economic and industry conditions, relationships with each significant customer, overall
customer credit-worthiness and historical experience.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_849_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_z1YulY4myp5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(d)
<i><span id="xdx_867_znxYHWPSLSHd">Property, Equipment, Leaseholds and Intangible Assets</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_z5dWLyYYEZO5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following assets are recorded at cost and depreciated using the methods and annual rates shown below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zlPfzWVw30ke">SCHEDULE OF METHOD OF DEPRECIATION</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 70%; border-collapse: collapse; margin-right: auto">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 55%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 43%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Computer
    hardware</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z44jHLrrTpBi" title="Depreciation method used and annual rate">30%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Furniture
    and fixtures</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zy1kQmquukqi" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Manufacturing
    equipment</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zq5YxItyna4j" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Office
    equipment</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ziT4ptdsa0I5" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Boat</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z5elPWHeq8mf" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Building
    and improvements</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_905_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zV3slMEDjBmf" title="Depreciation method used and annual rate">10%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trailer</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_909_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDpKnIp7Srm9" title="Depreciation method used and annual rate">30%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Automobiles</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zJ7sAc2aaFOc" title="Depreciation method used and annual rate">Straight-line
    over 5 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Patents</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_zUQGnoGcumhf" title="Depreciation method used and annual rate">Straight-line
    over 17 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Technology</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zTRMGRr7mbz5" title="Depreciation method used and annual rate">Straight-line
    over 10 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Leasehold
    improvements</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zIjK1WBJXIP5" title="Depreciation method used and annual rate">Straight-line
    over lease term</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Customer
    relationships &#8211; ENP Investments</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--CustomerRelationshipsENPInvestmentsMember_z58VczgrDlqj" title="Depreciation method used and annual rate">Straight-line
    over 15 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Software
    &#8211; ENP Investments</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareENPInvestmentsMember_z7yQ8qdk10R" title="Depreciation method used and annual rate">Straight-line
    over 3 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  </table>
<p id="xdx_8A7_zSwoGnG8Yfga" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_848_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zphhnjuMvRyc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">e)
<i><span id="xdx_86C_zXyL7qsob5K7">Impairment of Long-Lived Assets</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
accordance with FASB Codification Topic 360, <i>&#8220;Property, Plant and Equipment&#8221; </i>(ASC 360), the Company reviews long-lived
assets, including, but not limited to, property, equipment and leaseholds, patents and other assets, for impairment annually or whenever
events or changes in circumstances indicate the carrying amounts of assets may not be recoverable. The carrying value of long-lived assets
is assessed for impairment by evaluating operating performance and future undiscounted cash flows of the underlying assets. If the expected
future cash flows of an asset is less than its carrying value, an impairment measurement is indicated. Impairment charges are recorded
to the extent that an asset&#8217;s carrying value exceeds its fair value. Accordingly, actual results could vary significantly from
such estimates. There were no impairment charges during the periods presented.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84C_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_zi5V221GjRA7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(f)
<i><span id="xdx_86D_z177sSOyO1D8">Foreign Currency</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
functional currency of the Company is the U.S. dollar. The functional currency of three of the Company&#8217;s subsidiaries is the Canadian
dollar. The translation of the Canadian dollar to the reporting currency of the Company, the U.S. dollar, is performed for assets and
liabilities using exchange rates in effect at the balance sheet date. Revenue and expense transactions are translated using average exchange
rates prevailing during the year. Translation adjustments arising on conversion of the Company&#8217;s financial statements from the
subsidiary&#8217;s functional currency, Canadian dollars, into the reporting currency, U.S. dollars, are excluded from the determination
of income (loss) and are disclosed as other comprehensive income in the consolidated statements of income and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Foreign
exchange gains and losses relating to transactions not denominated in the applicable local currency are included in operating income
(loss) if realized during the year and in comprehensive income (loss) if they remain unrealized at the end of the year.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84F_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zOjsGQ63xU6h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(g)
<i><span id="xdx_866_zrnFwXrHme95">Revenue Recognition</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company generates revenue primarily from energy and water conservation products and biodegradable polymers, as further discussed in Note
19.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company follows a five-step model for revenue recognition. The five steps are: (1) identification of the contract(s) with the customer,
(2) identification of the performance obligation(s) in the contract(s), (3) determination of the transaction price, (4) allocation of
the transaction price to the performance obligation, and (5) recognition of revenue when (or as) the performance obligation is satisfied.
The Company has fulfilled its performance obligations when control transfers to the customer, which is generally at the time the product
is shipped since risk of loss is transferred to the purchaser upon delivery to the carrier. For shipments which are F.O.B. shipping point,
the Company has elected to account for shipping and handling activities as a fulfillment cost rather than as an additional promised service
and performance obligation.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Since
the Company&#8217;s inception, product returns have been insignificant; therefore, no provision has been established for estimated product
returns.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Deferred
revenues consist of products sold to distributors with payment terms greater than the Company&#8217;s customary business terms due to
lack of credit history or operating in a new market in which the Company has no prior experience. The Company defers the recognition
of revenue until the criteria for revenue recognition has been met and payments become due or cash is received from these distributors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84B_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zAqkjZWRvUx7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(h)
<i><span id="xdx_861_z3cB9HFjbrOb">Stock Issued in Exchange for Services</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s common stock issued in exchange for services is valued at estimated fair market value based upon trading prices of the
Company&#8217;s common stock on the dates of the stock transactions. The corresponding expense of the services rendered is recognized
over the period that the services are performed.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_848_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zsGE27Jo2VMa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">i)
<i><span id="xdx_865_zlbIfOwhXJZk">Stock-based Compensation</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognizes compensation expense for all share-based payments in accordance with FASB Codification Topic 718, <i>Compensation
&#8212; Stock Compensation</i>, (ASC 718). Under the fair value recognition provisions of ASC 718, the Company recognizes share-based
compensation expense, net of an estimated forfeiture rate, over the requisite service period of the award.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value at grant date of stock options is estimated using the Black-Scholes option-pricing model. Compensation expense is recognized
on a straight-line basis over the stock option vesting period based on the estimated number of stock options that are expected to vest.
Shares are issued from treasury upon exercise of stock options.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_841_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zZQrPnEebFff" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(j)
<i><span id="xdx_864_z2GP0Agodi6a">Other Comprehensive Income</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
comprehensive income refers to revenues, expenses, gains and losses that under generally accepted accounting principles are included
in comprehensive income, but are excluded from net income as these amounts are recorded directly as an adjustment to stockholders&#8217;
equity. The Company&#8217;s other comprehensive income is comprised only of unrealized foreign exchange gains and losses.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_841_eus-gaap--EarningsPerSharePolicyTextBlock_zKUqclfujMLk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(k)
<i><span id="xdx_864_zKOSKwGhOYIi">Income Per Share</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Basic
earnings per share is computed by dividing income available to common stockholders by the weighted average number of common shares outstanding
in the period. Diluted earnings per share are calculated giving effect to the potential dilution of the exercise of options and warrants.
Common equivalent shares, composed of incremental common shares issuable upon the exercise of stock options and warrants are included
in diluted net income per share to the extent that these shares are dilutive. Common equivalent shares that have an anti-dilutive effect
on net income per share have been excluded from the calculation of diluted weighted average shares outstanding for the years ended December
31, 2021 and 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_841_eus-gaap--UseOfEstimates_zMbsb2EoCDn4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">l)
<i><span id="xdx_864_zsve7NV2tYL5">Use of Estimates</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States requires
management to make estimates and assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated
financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from
those estimates and would impact the results of operations and cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Estimates
and underlying assumptions are reviewed at each period end. Revisions to accounting estimates are recognized in the period in which the
estimates are revised and in any future periods affected.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Significant
areas requiring the use of management estimates include assumptions and estimates relating to the valuation of goodwill and intangible
assets, asset impairment analysis, share-based payments, valuation allowances for deferred income tax assets, determination of useful
lives of property, equipment and leaseholds and intangible assets, recoverability of accounts receivable, recoverability of investments,
discount rates for right of use assets and the valuation of inventory.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84B_eus-gaap--FairValueOfFinancialInstrumentsPolicy_z0BH9V9e5lSd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 35.45pt; text-align: justify; text-indent: 0.55pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(m)
<i><span id="xdx_86A_zGAaOHYPJVZ6">Fair Value of Financial Instruments</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fair
value is defined as the exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal
or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.
Valuation techniques used to measure fair value must maximize the use of observable inputs and minimize the use of unobservable inputs.
The standard describes a fair value hierarchy based on three levels of inputs described below, of which the first two are considered
observable and the last unobservable, that may be used to measure fair value.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
    1 &#8211; Quoted prices in active markets for identical assets or liabilities.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
    2 &#8211; Inputs other than Level 1 that are observable, either directly or indirectly, such as quoted prices for similar assets
    or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable
    market data for substantially the full term of the assets or liabilities.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
    3 &#8212; Unobservable inputs that are supported by little or no market activity which is significant to the fair value of the assets
    or liabilities.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair values of cash and cash equivalents, term deposits, accounts receivable, accounts payable, accrued liabilities and the short term
line of credit for all periods presented approximate their respective carrying amounts due to the short term nature of these financial
instruments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of the long term debt for all periods presented approximates their respective carrying amounts due to these financial instruments
being at market rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_849_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zx06inet32O9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(n)
<i><span id="xdx_86E_zDRybwmA0BIb">Contingencies</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certain
conditions may exist as of the date the consolidated financial statements are issued which may result in a loss to the Company but which
will only be resolved when one or more future events occur or fail to occur. The Company&#8217;s management and its legal counsel assess
such contingent liabilities, and such assessment inherently involves an exercise of judgment. In assessing loss contingencies related
to legal proceedings that are pending against the Company or unasserted claims that may result in such proceedings, the Company&#8217;s
legal counsel evaluates the perceived merits of any legal proceedings or unasserted claims as well as the perceived merits of the amount
of relief sought or expected to be sought therein.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If
the assessment of a contingency indicates that it is probable that a material loss has been incurred and the amount of the liability
can be estimated, the estimated liability would be accrued in the Company&#8217;s consolidated financial statements. If the assessment
indicates that a potential material loss contingency is not probable, but is reasonably possible, or is probable but cannot be estimated,
then the nature of the contingent liability, together with an estimate of the range of possible loss if determinable and material, would
be disclosed.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Loss
contingencies considered remote are generally not disclosed unless they involve guarantees, in which case the guarantees would be disclosed.
Legal fees associated with loss contingencies are expensed as incurred.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_843_eus-gaap--IncomeTaxPolicyTextBlock_z0IrhDCYYHYi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(o)
<i><span id="xdx_86B_z8jDe7cyMYIi">Income Taxes</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income
taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for the expected future
tax consequences attributable to temporary differences between the financial statement carrying amounts of existing assets and liabilities
and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using
enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes
the enactment date. Deferred tax assets are reduced by a valuation allowance so that the assets are recognized only to the extent that
when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will be realized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
accordance with FASB ASC 740 &#8220;<i>Income taxes</i>&#8221; under the liability method, it is the Company&#8217;s policy to provide
for uncertain tax positions and the related interest and penalties based upon management&#8217;s assessment of whether a tax benefit
is more likely than not to be sustained upon examination by tax authorities. At December 31, 2021, the Company believes it has appropriately
accounted for any unrecognized tax benefits. To the extent the Company prevails in matters for which a liability for an unrecognized
benefit is established or is required to pay amounts in excess of the liability, the Company&#8217;s effective tax rate in a given financial
statement period may be affected. Interest and penalties associated with the Company&#8217;s tax positions are recorded as interest expense
in the consolidated statements of operations and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84B_eus-gaap--ConcentrationRiskCreditRisk_zI05byQ0hGPg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(p)
<i><span id="xdx_868_z1ZwYcJLZdke">Risk Management</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s credit risk is primarily attributable to its accounts receivable. The amounts presented in the accompanying consolidated
balance sheets are net of allowances for doubtful accounts, estimated by the Company&#8217;s management based on prior experience and
the current economic environment. The Company is exposed to credit-related losses in the event of non-payment by customers. Credit exposure
is minimized by dealing with only credit worthy counterparties. Revenue for the Company&#8217;s three primary customers totaled $<span id="xdx_902_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zOS4EpWjI00g" title="Revenue from Contract with Customer, Excluding Assessed Tax">16,917,947</span>
(<span id="xdx_902_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zfsy62oWCZHb" title="[custom:ConcentrationRiskThresholdPercentage]">49</span>%) for the year ended December 31, 2021 (2020 - $<span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zjszlIo1nerc" title="Revenue from Contract with Customer, Excluding Assessed Tax">14,713,127</span> or <span id="xdx_90E_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zuInXhPSLzB5" title="[custom:ConcentrationRiskThresholdPercentage]">47</span>%). Accounts receivable for the Company&#8217;s three primary customers
totaled $<span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z7SYKm5Nz7K" title="Accounts Receivable, after Allowance for Credit Loss">4,940,995</span> (<span id="xdx_909_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zMBGqPdzI448" title="[custom:ConcentrationRiskThresholdPercentage]">69</span>%) at December 31, 2021 (2020 - $<span id="xdx_902_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zz2ZhwbIOSQg" title="Accounts Receivable, after Allowance for Credit Loss">3,986,284</span> or <span id="xdx_90D_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zt2tPUAnV8O7" title="[custom:ConcentrationRiskThresholdPercentage]">68</span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
credit risk on cash and cash equivalents is limited because the Company limits its exposure to credit loss by placing its cash and cash
equivalents with major financial institutions. The Company maintains cash balances at financial institutions which at times exceed federally
insured amounts. The Company has not experienced any losses in such accounts.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company is exposed to foreign exchange and interest rate risk to the extent that market value rate fluctuations materially differ from
financial assets and liabilities, subject to fixed long-term rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
order to manage its exposure to foreign exchange risks, the Company is closely monitoring the fluctuations in the foreign currency exchange
rates and the impact on the value of cash and cash equivalents, accounts receivable, and accounts payable and accrued liabilities. The
Company has not hedged its exposure to currency fluctuations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company is exposed to interest rate risk to the extent that the fair value or future cash flows for financial liabilities will fluctuate
as a result of changes in market interest rates. The Company is exposed to interest rate risk on its long-term debt.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
order to manage its exposure to interest rate risk, the Company is closely monitoring fluctuations in market interest risks and will
refinance its long-term debt where possible to obtain more favourable rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84E_eus-gaap--EquityMethodInvestmentsPolicy_zrNend6p3aPd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(q)
<i><span id="xdx_863_zZwSBY8hy1Rd">Equity Method Investment</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company accounts for investments using the equity method of accounting if the investment provides the Company the ability to exercise
significant influence, but not control, over the investee. <span id="xdx_909_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20210101__20211231_zqwPvvr5RrQk" title="Equity Method Investment, Description of Principal Activities">Significant influence is generally deemed to exist if the Company&#8217;s
ownership interest in the voting stock of the investee ranges between 20% and 50%, although other factors, such as representation on
the investee&#8217;s board of directors, are considered in determining whether the equity method of accounting is appropriate. </span>Under
the equity method of accounting, the investment is initially recorded at cost in the consolidated balance sheets under other assets and
adjusted for dividends received and the Company&#8217;s share of the investee&#8217;s earnings or losses together with other-than-temporary
impairments which are recorded through other income (loss), net in the consolidated statements of income and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84E_eus-gaap--GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy_zUQPenO0Idsa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(r)
<i><span id="xdx_866_zXAPsxvAASYd">Goodwill and intangible assets</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
represents the excess of the purchase price of an acquired entity over the amounts assigned to the assets acquired and liabilities assumed.
Goodwill is not amortized, but is reviewed for impairment annually or more frequently if certain impairment conditions arise. The Company
performs an annual goodwill impairment review in the fourth quarter of each year at the reporting unit level. The evaluation begins with
a qualitative assessment of the factors that could impact the significant inputs used to estimate fair value. If after performing the
qualitative assessment, it is determined that it is more likely than not that the fair value of a reporting unit is greater than its
carrying amount, including goodwill, then no further analysis is necessary. However, if the results of the qualitative test are unclear,
the Company performs a quantitative test, which involves comparing the fair value of a reporting unit with its carrying amount, including
goodwill. The Company uses an income-based valuation method, determining the present value of future cash flows, to estimate the fair
value of a reporting unit. If the fair value of a reporting unit exceeds its positive carrying amount, goodwill of the reporting unit
is considered not impaired, and no further analysis is necessary. If the fair value of the reporting unit is less than its carrying amount,
goodwill impairment would be recognized equal to the amount of the carrying value in excess of the reporting unit&#8217;s fair value,
limited to the total amount of goodwill allocated to the reporting unit.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.05in; text-align: justify; text-indent: 0.3in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Intangible
assets primarily include trademarks and trade secrets with indefinite lives and customer-relationships with finite lives. Intangible
assets with indefinite lives are not amortized but are tested for impairment on an annual basis, or more frequently if indicators of
impairment are present. Indefinite lived intangible assets are assessed using either a qualitative or a quantitative approach. The qualitative
assessment evaluates factors including macro-economic conditions, industry and company-specific factors, legal and regulatory environments,
and historical company performance in assessing fair value. If it is determined that it is more likely than not that the fair value of
the intangible asset is less than its carrying value, a quantitative test is then performed. Otherwise, no further testing is required.
When using a quantitative approach, the Company compares the fair value of the intangible asset to its carrying amount, including goodwill.
If the estimated fair value of the intangible asset is less than the carrying amount of the intangible asset, impairment is indicated,
requiring recognition of an impairment charge for the differential.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Qualitative
assessments of goodwill and indefinite-lived intangible assets were performed in 2021 and 2020. Based on the results of the assessment,
it was determined that it is more likely than not the reporting unit, customer lists and trademarks had a fair value in excess of their
carrying value. Accordingly, no further impairment testing was completed and no impairment charges related to goodwill or indefinite-lived
intangibles were recognized during the year ended December 31, 2021 or 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Finite-lived
intangible assets are amortized on a straight-line basis over their estimated useful lives. The Company reviews for impairment indicators
of finite-lived intangibles and other long-lived assets as described in the &#8220;Impairment of Long Lived Assets&#8221; significant
accounting policy.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_849_eus-gaap--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zpXvQfT1zgll" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(s)
<i><span id="xdx_86C_zbHK8bRW3XD2">Recent Accounting Pronouncements</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has implemented all applicable new accounting pronouncements that are in effect. Those pronouncements did not have any material
impact on the consolidated financial statements unless otherwise disclosed, and the Company does not believe that there are any other
new accounting pronouncements that have been issued that might have a material impact on its financial position or results of operations.</span></p>

<p id="xdx_850_zAgPzyBaYWj3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<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 );">- References</a><div><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;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_SignificantAccountingPoliciesTextBlock">
<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 entire disclosure for all significant accounting policies of the reporting entity.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18726-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<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;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>19
<FILENAME>R9.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196638456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LEASES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_FSI_DisclosureLeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">LEASES</a></td>
<td class="text"><p id="xdx_80C_eus-gaap--LesseeOperatingLeasesTextBlock_znP3bIgs0Q51" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>3.
<span>Leases <b><span id="xdx_829_z29kXnC3Cuq2" style="display: none">LEASES</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>&#160;</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accounting
and reporting guidance for leases requires that leases be evaluated and classified as either operating or finance leases by the lessee
and as either operating, sales-type or direct financing leases by the lessor. For leases with terms greater than 12 months, the Company
records the related right-of-use (&#8220;ROU&#8221;) asset and lease obligation at the present value of lease payments over the term.
Leases may include fixed rental escalation clauses, renewal options and / or termination options that are factored into the determination
of lease payments when appropriate. The Company&#8217;s operating leases are included in ROU assets, lease liabilities-current portion
and lease liability-less current portion in the accompanying consolidated balance sheets. ROU assets represent the Company&#8217;s right
to use an underlying asset for the lease term, and lease liabilities represent the obligation to make lease payments arising from the
lease. The Company&#8217;s leases do not usually provide a readily determinable implicit rate; therefore, an estimate of the Company&#8217;s
incremental borrowing rate is used to discount the lease payments based on information available at the lease commencement date. The
discount rate used was <span id="xdx_909_eus-gaap--LesseeOperatingLeaseDiscountRate_iI_pid_dp_c20211231_zz26ykbIW5Rf" title="Operating leases discount rate">5.5</span>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_893_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_znvdiWs5BOz4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below summarizes the right-of-use asset and lease liability for the year ended December 31, 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BE_zmYTjilXJPh8">SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: 0.5in; border-collapse: collapse; width: 90%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline; font-weight: bold; text-align: left">Right of Use Assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 84%">Balance at December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20200101__20201231_zxoFF5obpXR2" style="width: 14%; text-align: right" title="Right of Use Assets Beginning Balance">789,205</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Addition</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_ecustom--OperatingLeaseAssetsAddition_pp0p0_c20200101__20201231_z8tPdp5n7ouh" style="text-align: right" title="Addition">260,661</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Termination</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--OperatingLeasesAssetsTermination_c20200101__20201231_pp0p0" style="text-align: right" title="Termination">(234,980</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20200101__20201231_z4wEdD1YCbV1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation">(331,773</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance at December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zPKax8oCy2oj" style="text-align: right" title="Right of Use Assets Ending Balance">483,113</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zLbzOPUeSl2g" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation">(265,846</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20210101__20211231_zAFXdNrBCaU8" style="text-align: right" title="Right of Use Assets Ending Balance">217,267</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-decoration: underline; font-weight: bold; text-align: left">Lease Liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance at December 31, 2019</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_985_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20200101__20201231_zJ22uqJEIwc6" style="text-align: right" title="Lease Liability Beginning Balance">789,205</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Addition</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--OperatingLeasesLiabilityAddition_c20200101__20201231_pp0p0" style="text-align: right" title="Addition">260,661</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Termination</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_ecustom--OperatingLeasesLiabilityTermination_pp0p0_c20200101__20201231_zsyS7IMrCghj" style="text-align: right" title="Termination">(234,980</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Lease interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--LeaseInterestExpense_c20200101__20201231_pp0p0" style="text-align: right" title="Lease interest expense">53,768</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Payments</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20200101__20201231_zco2cj0Ysagi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments">(385,541</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance at December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_980_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_z63JfCGl6Jr1" style="text-align: right" title="Lease Liability Ending Balance">483,113</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Lease interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_zctDyBbRYAh7" style="text-align: right" title="Lease interest expense">22,057</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Payments</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20210101__20211231_z9R3fmOKH9wg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments">(287,903</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance at December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_982_eus-gaap--OperatingLeaseLiability_iE_pp0p0_c20210101__20211231_z8d0g1z3ncfa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Lease Liability Ending Balance">217,267</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Short-term portion</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20211231_zKSKEoTDAhg4" style="text-align: right" title="Short-term portion">77,715</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Long-term portion</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20211231_z3iPAaXNtF67" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term portion">139,552</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_982_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20211231_zVOwesMLPETe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">217,267</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AB_z5jnoL00lvC" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_892_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_z4THXWU4keZ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Undiscounted
rent payments are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zdve3Wfqljr">SCHEDULE OF UNDISCOUNTED RENT PAYMENTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2022</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_499_20211231_zP2IDO4kxUn3" style="text-align: right">78,240</td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_ztTzIN3bp74h" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">78,240</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_pp0p0_maLOLLPz1VZ_zRiGeaZt7Cw5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">77,100</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_pp0p0_maLOLLPz1VZ_zu52hjG56X59" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">70,440</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_pp0p0_maLOLLPz1VZ_zMDIJXaMjux2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">2025</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">71,940</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_pp0p0_mtLOLLPz1VZ_zyqqLngmSJv" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Total</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">297,720</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_pp0p0_di_zPwpe5PojJug" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">Impact of discounting</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(80,453</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify; padding-bottom: 1.5pt">Lease liability, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">217,267</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A4_z7YN6rlD21Kg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DisclosureLeasesAbstract">
<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 );">- References</a><div><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;">FSI_DisclosureLeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</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_us-gaap_LesseeOperatingLeasesTextBlock">
<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 entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI http://asc.fasb.org/subtopic&amp;trid=77888251<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;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>20
<FILENAME>R10.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196652696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ACCOUNTS RECEIVABLE<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinancingReceivablesTextBlock', window );">ACCOUNTS RECEIVABLE</a></td>
<td class="text"><p id="xdx_806_eus-gaap--FinancingReceivablesTextBlock_zGblIiwEj8Kh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>4.
<span>Accounts Receivable <b><span id="xdx_82A_zG5CuoRGhY5g" style="display: none">ACCOUNTS RECEIVABLE</span></b></span></b></span></p>

<p id="xdx_893_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_zKbmmJlrLhFg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zGEO4ZSBJohl">SCHEDULE OF ACCOUNTS RECEIVABLE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_497_20211231_zVVUF86G12r6" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20201231_zAD8vqYveWMj" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--AccountsReceivableGross_i02I_pp0p0_maAANRNzCGO_zP6m6jwLhh8i" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Accounts receivable</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">7,403,308</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">6,161,249</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_i02NI_pp0p0_di_msAANRNzCGO_z6AUihP7p02e" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Allowances for doubtful accounts</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(273,979</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(271,436</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--AccountsAndNotesReceivableNet_i02TI_pp0p0_mtAANRNzCGO_zlrdv5AfO9Gi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total accounts receivable</span></td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">7,129,329</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,889,813</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A6_zXda4wtCfTzb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancingReceivablesTextBlock">
<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 entire disclosure for financing receivable.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -URI http://asc.fasb.org/subtopic&amp;trid=2196772<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -URI http://asc.fasb.org/subtopic&amp;trid=2196816<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;">us-gaap_FinancingReceivablesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ReceivablesAbstract">
<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 );">- References</a><div><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;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R11.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440197078184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INVENTORIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">INVENTORIES</a></td>
<td class="text"><p id="xdx_80E_eus-gaap--InventoryDisclosureTextBlock_zHuucQHW0dj3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>5.
<span>Inventories <span id="xdx_826_zNS0FrCxPhK" style="display: none">INVENTORIES</span></span></b></span></p>

<p id="xdx_892_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zE1zvLRMz1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BF_zn3wFWQpBjS1">SCHEDULE OF INVENTORIES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_495_20211231_z1QygdhdEd0a" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20201231_zKTPU8G0ztF7" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_z7kwJE3yLnN5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Completed goods</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">3,417,829</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">3,393,794</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--InventoryWorkInProcess_iI_pp0p0_maINzDiN_z5fX5WuBiQaa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Work in progress</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0789">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">152,595</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_zjw3Jqeplpka" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Raw materials and supplies</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">6,084,176</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">4,826,087</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pp0p0_mtINzDiN_zCQYjA5oYjM2" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;<span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total inventory</span>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">9,502,005</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,372,476</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A1_z7fbzG6KljI4" style="font: 10pt Times New Roman, Times, Serif; display: none; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_InventoryDisclosureTextBlock">
<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 entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<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;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>22
<FILENAME>R12.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440197089064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY, EQUIPMENT AND LEASEHOLDS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">PROPERTY, EQUIPMENT AND LEASEHOLDS</a></td>
<td class="text"><p id="xdx_80E_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_zFBAUaF1rbOg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>6.
<span>Property, Equipment and Leaseholds <span style="font-variant: small-caps"><span id="xdx_82A_zW5zVjxlF9Ic" style="display: none">PROPERTY, EQUIPMENT AND LEASEHOLDS</span></span></span></b></span></p>

<p id="xdx_891_eus-gaap--PropertyPlantAndEquipmentTextBlock_zQf95OB29Tm1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_zsxJFHuZlLil">&#160;SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2021</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2021</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Cost</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Net</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: left">Buildings and improvements</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6IagJkkWm9g" style="width: 14%; text-align: right" title="Cost">4,823,708</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6OjoO26Hlh4" style="width: 14%; text-align: right" title="Accumulated Depreciation">2,983,589</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z3mjqj8tjmug" style="width: 14%; text-align: right" title="Property, Plant and Equipment, Net, Total">1,840,119</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zQVdUD9JALMk" style="text-align: right" title="Cost">196,255</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zBd3jdxS1nYj" style="text-align: right" title="Accumulated Depreciation">71,258</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zRckIAqSFJCf" style="text-align: right" title="Property, Plant and Equipment, Net, Total">124,997</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Computer hardware</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zmgYMeTPqEqf" style="text-align: right" title="Cost">43,605</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zPEhHTvJpyj1" style="text-align: right" title="Accumulated Depreciation">42,456</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zK9HmOwOT2g" style="text-align: right" title="Property, Plant and Equipment, Net, Total">1,149</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Furniture and fixtures</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zvSHEQeZAS59" style="text-align: right" title="Cost">130,658</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zx2EFt0qBr4e" style="text-align: right" title="Accumulated Depreciation">106,101</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_z0rez7RsNyOc" style="text-align: right" title="Property, Plant and Equipment, Net, Total">24,557</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zVZhlKwdbxc" style="text-align: right" title="Cost">1,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zK3HxneSE3pd" style="text-align: right" title="Accumulated Depreciation">1,155</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ztskZy3WZ2Nc" style="text-align: right" title="Property, Plant and Equipment, Net, Total">717</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zYi4XmmSWXd6" style="text-align: right" title="Cost">6,867,799</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z9MVXMcxdK84" style="text-align: right" title="Accumulated Depreciation">4,171,699</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5dSPJOg1B07" style="text-align: right" title="Property, Plant and Equipment, Net, Total">2,696,100</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Trailer</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z5xSMZcBgqfc" style="text-align: right" title="Cost">9,463</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_znuuJ3b0wh2i" style="text-align: right" title="Accumulated Depreciation">7,532</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zEvR7mwu2hGa" style="text-align: right" title="Property, Plant and Equipment, Net, Total">1,931</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z9O2MlnIF4Pg" style="text-align: right" title="Cost">34,400</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zD6wxgIt3Gqf" style="text-align: right" title="Accumulated Depreciation">26,284</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z4qRlMy50HQd" style="text-align: right" title="Property, Plant and Equipment, Net, Total">8,116</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zU4rxGL1Z372" style="text-align: right" title="Cost">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl8VjxDx7Lj3" style="text-align: right" title="Accumulated Depreciation">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zvkHbBzEjCT2" style="text-align: right" title="Property, Plant and Equipment, Net, Total"><span style="-sec-ix-hidden: xdx2ixbrl0854">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zONCi4vNHbl7" style="text-align: right" title="Cost">107,759</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zLO38p5X7nUi" style="text-align: right" title="Accumulated Depreciation">107,759</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zDaZB9A7whz4" style="text-align: right" title="Property, Plant and Equipment, Net, Total"><span style="-sec-ix-hidden: xdx2ixbrl0860">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Land</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zzWsQk3HAr82" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">234,027</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zAUOpsFmZx5f" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"><span style="-sec-ix-hidden: xdx2ixbrl0864">&#8212;</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zxcnFD2XuiCk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total">234,027</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">12,538,418</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation">7,606,705</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentNet_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total">4,931,713</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2020</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2020</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Cost</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Net</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: left">Buildings and improvements</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z2xggdUxPDeh" style="width: 14%; text-align: right" title="Cost">4,798,370</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zo8xUD4jTwJe" style="width: 14%; text-align: right" title="Accumulated Depreciation">2,836,142</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zNtgRDDxMezh" style="width: 14%; text-align: right" title="Property, Plant and Equipment, Net, Total">1,962,228</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zdiNLCfbyWbb" style="text-align: right" title="Cost">180,956</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zUpjUOkzKdC4" style="text-align: right" title="Accumulated Depreciation">61,266</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zvQGB6Ir6aG4" style="text-align: right" title="Property, Plant and Equipment, Net, Total">119,690</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Computer hardware</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zdZLtO6di8Kj" style="text-align: right" title="Cost">43,593</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zUnPMa1ngME5" style="text-align: right" title="Accumulated Depreciation">41,957</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zy2OmZiRKvLk" style="text-align: right" title="Property, Plant and Equipment, Net, Total">1,636</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Furniture and fixtures</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zwj9r7Oc7Wdj" style="text-align: right" title="Cost">111,145</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zmHqBqEifps2" style="text-align: right" title="Accumulated Depreciation">101,186</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zX4z5NxNUWr8" style="text-align: right" title="Property, Plant and Equipment, Net, Total">9,959</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zGplvNwQi9D5" style="text-align: right" title="Cost">1,864</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zNL0aOoPiWd8" style="text-align: right" title="Accumulated Depreciation">971</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zIjBL02ru4n6" style="text-align: right" title="Property, Plant and Equipment, Net, Total">893</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5vUCDmx9rr3" style="text-align: right" title="Cost">6,154,425</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_za1nGbSr0ark" style="text-align: right" title="Accumulated Depreciation">3,573,748</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zv48BQLN7kjc" style="text-align: right" title="Property, Plant and Equipment, Net, Total">2,580,677</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Trailer</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zJQj9SaHqVMi" style="text-align: right" title="Cost">9,422</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z33mqDH9afzl" style="text-align: right" title="Accumulated Depreciation">6,675</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zaJ9uGg4oSIg" style="text-align: right" title="Property, Plant and Equipment, Net, Total">2,747</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zyGRlJFh5Z4b" style="text-align: right" title="Cost">34,400</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z1qymRSduX0f" style="text-align: right" title="Accumulated Depreciation">24,255</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zWMVB0Js2Jl" style="text-align: right" title="Property, Plant and Equipment, Net, Total">10,145</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl30RkG2bga7" style="text-align: right" title="Cost">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_ziGsCPADoXdj" style="text-align: right" title="Accumulated Depreciation">87,205</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zuGAiOKNUbTg" style="text-align: right" title="Property, Plant and Equipment, Net, Total">1,667</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zYuTbx1QTWJh" style="text-align: right" title="Cost">107,295</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zshI1XyfkMj6" style="text-align: right" title="Accumulated Depreciation">107,295</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zT6a0EGpDXw7" style="text-align: right" title="Property, Plant and Equipment, Net, Total"><span style="-sec-ix-hidden: xdx2ixbrl0932">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Land</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_ze1fLkmOpADe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">452,399</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zZ3jJkVGG89l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"><span style="-sec-ix-hidden: xdx2ixbrl0936">&#8212;</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_z11ex2owSN05" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total">452,399</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231_z87QSSWhFWn" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">11,982,741</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231_z2K9lJlKZjN4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation">6,840,700</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231_zoy0Ntvw4Uc2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total">5,142,041</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A6_zr6fWGJTWzOg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amount
of depreciation expense for 2021: $<span id="xdx_903_eus-gaap--Depreciation_pp0p0_c20210101__20211231_zzH8kidXiEmb" title="Depreciation">773,497</span> (2020: $<span id="xdx_905_eus-gaap--Depreciation_pp0p0_c20200101__20201231_z3BTW44AyOCe" title="Depreciation">659,233</span>) and is included in cost of sales in the consolidated statements of income
and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, <span id="xdx_909_eus-gaap--AreaOfLand_iI_usqft_c20210112_zCiINoHCl5Yj" title="Area of land">3.3</span> acres of cleared and undeveloped land in Taber, AB Canada was disposed of for proceeds of $<span id="xdx_909_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zIYOKH0si0O8">263,380</span>
($<span id="xdx_901_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zeZ32Tpyne6i">333,899</span>CAD). With a cost of $<span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zk3wCFQo6ns1" title="Cost">219,318</span> ($<span id="xdx_900_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_uCAD_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z8w8qCDq3YL5" title="Cost">278,040</span>CAD) the Company recognized a gain of $<span id="xdx_900_ecustom--GainOnInvestments_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z4rpbvCnd9s" title="Recognized gains">44,330</span> ($<span id="xdx_90D_ecustom--GainOnInvestments_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z3bKEZNqzoO7">55,859</span>CAD) on the disposal. During the
year ended December 31, 2020, equipment with a cost of $<span id="xdx_906_eus-gaap--PropertyPlantAndEquipmentGross_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_pp0p0" title="Cost">79,517</span> and accumulated depreciation of $<span id="xdx_909_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zPIK1xoqJnz4" title="Accumulated depreciation">64,218</span> was disposed for proceeds of $<span id="xdx_909_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_c20200101__20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z4yAs4pLZ95k" title="Proceed for disposal">24,789</span>.
The Company recognized a gain of $<span id="xdx_903_eus-gaap--GainLossOnSaleOfPropertyPlantEquipment_pp0p0_c20200101__20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zQW3PmksIJj9" title="Gain on disposal">9,490</span> on the disposal.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<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 );">- References</a><div><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;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock">
<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 entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI http://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<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;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>23
<FILENAME>R13.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196655496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PATENTS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">PATENTS</a></td>
<td class="text"><p id="xdx_803_eus-gaap--IntangibleAssetsDisclosureTextBlock_zj1C36xo4Dqe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>7.
<span>Patents <b><span id="xdx_82D_zi5nuLuxdArl" style="display: none">PATENTS</span></b></span></b></span></p>

<p id="xdx_896_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zou6aUfzVBoe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BB_zDX8DZWv8Rt1" style="display: none">SCHEDULE OF PATENTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2021</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Accumulated <br/> Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2021</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; padding-bottom: 1.5pt">Patents</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zgxPltbff797" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, Cost">208,079</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_z0UJKjUecFJc" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated Amortization">194,380</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zxzh9NVo05Pd" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net">13,699</td><td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2020</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Accumulated <br/> Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2020</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; padding-bottom: 1.5pt">Patents</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_98F_eus-gaap--FiniteLivedPatentsGross_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, Cost">208,211</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20201231_zZTlu66uBsV1" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated Amortization">178,074</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left">$</td><td id="xdx_988_eus-gaap--FiniteLivedIntangibleAssetsNet_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net">30,137</td><td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AB_zzwf0WzDHsxe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Decrease
in 2021 cost was due to currency conversion. 2021 cost in Canadian dollars - $<span id="xdx_90D_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20211231__us-gaap--AwardTypeAxis__custom--CADMember_zg4ReEafwRo6" title="Increase in currency conversion">265,102</span> (2020 - $<span id="xdx_909_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20201231__us-gaap--AwardTypeAxis__custom--CADMember_zV3LwzRLUQrb" title="Increase in currency conversion">265,102</span> in Canadian dollars).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amount
of amortization for 2021: $<span id="xdx_904_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231_zgjeWW15r9Qf" title="Amortization">16,438</span> (2020 - $<span id="xdx_906_eus-gaap--AmortizationOfIntangibleAssets_c20200101__20201231_pp0p0" title="Amortization">16,438</span>) and is included in cost of sales in the consolidated statements of income and comprehensive
income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89F_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zg7OVd19fWO1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Estimated
amortization expense over the next five years is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zY0f2ngYyaB4" style="display: none">SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231_zd2gvfDF81Fc" title="2022">13,699</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AC_zfrew5pQLar7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IntangibleAssetsDisclosureTextBlock">
<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 entire disclosure for all or part of the information related to intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI http://asc.fasb.org/topic&amp;trid=2144416<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;">us-gaap_IntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>24
<FILENAME>R14.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440197055000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>GOODWILL AND INTANGIBLE ASSETS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">GOODWILL AND INTANGIBLE ASSETS</a></td>
<td class="text"><p id="xdx_802_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zflxDWbUSqa4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>8.
<span style="font-variant: small-caps"><span>Goodwill and Intangible Assets <b><span id="xdx_827_zzHw76VrhbT" style="display: none">GOODWILL AND INTANGIBLE ASSETS</span></b></span></span></b></span></p>

<p id="xdx_898_eus-gaap--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zjXsHyEPpKwl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zE6ikT39usR4" style="display: none">SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Goodwill</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 82%; padding-bottom: 1.5pt">Balance as of December 31, 2020 and 2021</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><span><span id="xdx_905_eus-gaap--Goodwill_iI_c20201231_zqDInxhtDvTk" title="Goodwill"><span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zpczmAJ7ULed">2,534,275</span></span></span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Indefinite Lived Intangible Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance as of December 31, 2020 and 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span><span id="xdx_90C_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_zRUJmRw2pR4b" title="Indefinite Lived Intangible Asset"><span id="xdx_909_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20201231_z4Gysg2HBfDj">770,000</span></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
relates to the acquisition of ENP Investments. Indefinite lived intangible assets consist of trade secrets and trademarks related to
the acquisition of ENP Investments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Definite Life Intangible Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 82%">Balance as of December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zqnzOKzCdel" style="width: 14%; text-align: right" title="Beginning balance">2,182,000</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zL89yHsrhSD3" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization">(176,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance as of December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zT63YCXPM2F6" style="text-align: right" title="Beginning balance">2,006,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zm7BrKwivm23" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization">(176,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Balances as of December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsNet_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_z7DeKkhzIHPe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Ending balance">1,830,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


<p id="xdx_8A9_zoRl6QXTlhU1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Definite
life intangible assets consist of customer relationships and software related to the acquisition of ENP Investments. Customer relationships
and software are amortized over their estimated useful life of <span id="xdx_903_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--CustomerRelationshipsMember_zPamdrHmpXp1" title="Estimated useful life">15</span> years and <span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--ComputerSoftwareIntangibleAssetMember_z5DLDXqlAdb2" title="Estimated useful life">3</span> years, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_897_ecustom--ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock_zt5FJmuBpXC" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Estimated
amortization expense over the next five years is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zR9Q8YPXhWmh" style="display: none">SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_900_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zuDLg7ZNAJYk" title="2022">160,000</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zYJoY8bbWood" style="text-align: right" title="2023">160,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zH6nAo29pVZe" style="text-align: right" title="2024">160,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zAVlxw356sJ8" style="text-align: right" title="2025">160,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify; padding-bottom: 1.5pt">2026</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zkJorWHpqWP1" style="border-bottom: Black 1.5pt solid; text-align: right" title="2026">160,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A9_zWaWeKH6m1Ke" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock">
<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 entire disclosure for goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI http://asc.fasb.org/topic&amp;trid=2144416<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;">us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>25
<FILENAME>R15.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196713768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LONG TERM DEPOSITS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_FSI_DisclosureLongTermDepositsAbstract', window );"><strong>Long Term Deposits</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_LongTermDepositsTextBlock', window );">LONG TERM DEPOSITS</a></td>
<td class="text"><p id="xdx_80D_ecustom--LongTermDepositsTextBlock_zq1yQeUBivc1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>9.
<span style="font-variant: small-caps"><span>Long Term Deposits <b><span id="xdx_82C_zwPZEztgB3yf" style="display: none">LONG TERM DEPOSITS</span></b></span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p id="xdx_892_ecustom--ScheduleOfLongTermDepositsTableTextBlock_z2LfUcfvuOs7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has security deposits that are long term in nature which consist of damage deposits held by landlords and security deposits held
by various vendors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zSLcqLr61Cb3" style="display: none">SCHEDULE OF LONG TERM DEPOSITS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20211231_z5wQyUodyJKj" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_493_20201231_zXANx59fZjyh" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Long term deposits</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,540</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,540</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AB_zbZPdYjx7Amh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DisclosureLongTermDepositsAbstract">
<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 );">- References</a><div><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;">FSI_DisclosureLongTermDepositsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</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_FSI_LongTermDepositsTextBlock">
<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>Long Term Deposits [Text Block]</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;">FSI_LongTermDepositsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>26
<FILENAME>R16.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196710504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INVESTMENTS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract', window );"><strong>Equity Method Investments and Joint Ventures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsDisclosureTextBlock', window );">INVESTMENTS</a></td>
<td class="text"><p id="xdx_809_eus-gaap--EquityMethodInvestmentsDisclosureTextBlock_zv9UrlFNJfJ8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>10.
<span>Investments <b><span id="xdx_82C_zdcxzt7bihBc" style="display: none">INVESTMENTS</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">a<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company has a <span id="xdx_901_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zh71GJVpd1q9" title="Ownership interest">50</span>% ownership interest
in ENP Peru Investments LLC (&#8220;ENP Peru&#8221;). ENP Peru is located in Illinois and leases warehouse space. The Company accounts
for this investment using the equity method of accounting. A summary of the Company&#8217;s investment follows:</span></p>

<p id="xdx_893_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zZYejtMnCpQ1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B2_zdTJRDriP3R9" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_906_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zyh4tunHg0y" title="Balance, Beginning">11,387</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Return of equity</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zg6SlDLvHNEg" style="text-align: right" title="Return of equity">(9,063</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain in equity method investment</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain (loss) in equity method investment">1,498</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zWbbRXiJmLMk" style="text-align: right" title="Balance, Beginning">3,822</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Return of equity</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuKru1CWLF22" style="text-align: right" title="Return of equity">(3,822</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain in equity method investment</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zifu3hVCdww" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain (loss) in equity method investment">22,642</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_985_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zb9s0kzoim3" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending">22,642</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AA_z1PEhRsE8Y29" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, the Company received an additional $<span id="xdx_901_eus-gaap--ProceedsFromContributionsFromAffiliates_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z70o4H9kofig" title="Proceeds from investment">30,478</span> from ENP Peru. At the time of receipt of the payment, the
investment balance was $nil and the payment was not recorded against the investment balance but was included in gains on investments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_890_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zEJTiTqkdV5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Summarized
profit and loss information for ENP Peru is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B2_z1eFrklZK1b3" style="display: none">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_988_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z4EWTd49a26g" style="width: 14%; text-align: right" title="Net sales">322,079</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="width: 14%; text-align: right" title="Net sales">295,800</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuCNYZhxETki" style="text-align: right" title="Net income">45,285</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="text-align: right" title="Net income">2,996</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AE_z2KpwiD1bkyd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">b<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During the year ended December 31, 2018,
ENP Investments acquired a <span id="xdx_90E_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20181231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zKYTVXlXyfIc" title="Ownership interest">24</span>% ownership interest in ENP Realty LLC (&#8220;ENP Realty&#8221;). ENP Realty is located in Illinois and
leases warehouse space. During the year ended December 31, 2020, the other partners of ENP Realty withdrew from the partnership, resulting
in ENP Realty becoming a wholly owned subsidiary of ENP Investments. As a result, ENP Realty is consolidated in the financial statements
of the Company and a <span id="xdx_90E_eus-gaap--MinorityInterestOwnershipPercentageByNoncontrollingOwners_iI_pid_dp_uPure_c20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember_zDfhCAbBqndj" title="Non-controlling interests">35</span>% non-controlling interest is recognized from the acquisition date onwards.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">It
was determined that ENP Realty did not meet the definition of a business in accordance with FASB Codification Topic 805, Business Combinations
(ASC 805)<i>, </i>and the acquisition was accounted for as an asset acquisition. The following table summarizes the final purchase price
allocation of the consideration paid to the respective fair values of the assets acquired and liabilities assumed in ENP Realty as of
the acquisition date.</span></p>

<p id="xdx_89F_ecustom--ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_z0wMTUSS81xj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span><span><span id="xdx_8B0_zUVZRvearMva" style="display: none">SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION</span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: left; padding-bottom: 1.5pt">Investment eliminated upon consolidation</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><span id="xdx_907_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20210101__20211231_zbg0Kp2l6Mf9" title="Investment eliminated upon consolidation">63,165</span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Assets acquired:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Cash</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pp0p0_c20211231_zhOVv8AutEWc" style="text-align: right" title="Assets acquired: Cash">13,419</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Building</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iI_pp0p0_c20211231_zznfX3IvKHag" style="text-align: right" title="Assets acquired:Building">630,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Land</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iI_pp0p0_c20211231_zlTTI6reeuO4" style="text-align: right" title="Assets acquired: Land">85,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Liabilities assumed:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Accounts payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pp0p0_di_c20211231_zCrjSk8UrOZf" style="text-align: right" title="Liabilities assumed: Accounts payable">(15,797</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Long term debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt_iNI_pp0p0_di_c20211231_z2LD5YNSJJVe" style="text-align: right" title="Liabilities assumed: Long term debt">(450,000</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Deferred income tax liability</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_pp0p0_di_c20211231_zsBoS6DdJ1dj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Liabilities assumed: Deferred income tax liability">(66,116</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Total identifiable net assets:</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_pp0p0_c20211231_zzKg3bxfGErb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total identifiable net assets:">196,506</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain on acquisition of ENP Realty</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_ecustom--GainOnAcquisitionOfEnpRealty_pp0p0_c20210101__20211231_zHDSnMRDPZSc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain on acquisition of ENP Realty">133,341</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AA_zNLmVO3NIBzg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
income tax expense arising from the deferred income tax liability is net against gain on acquisition of ENP Realty in the consolidated
statements of income and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89D_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_zemTOk4wjwI2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A
summary of the Company&#8217;s investment follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span><span id="xdx_8B1_zxdrOPvF7Pwc" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_90C_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zoeW8coVmUL1" title="Balance, Beginning">63,165</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Investment eliminated upon consolidation</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zOhwWHdTR0r5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Investment eliminated upon consolidation">(63,165</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance, December 31, 2020 and 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span id="xdx_90E_eus-gaap--EquityMethodInvestments_iE_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zZYLYHPEyJ2" title="Balance, Ending"><span id="xdx_90D_eus-gaap--EquityMethodInvestments_iE_c20210101__20211231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_ztyP2cPxE9x2" title="Balance, Ending"><span style="-sec-ix-hidden: xdx2ixbrl1102"><span style="-sec-ix-hidden: xdx2ixbrl1104">-</span></span></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A1_ztcpb3CVpCdb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">c<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In December 2018 the Company invested $<span id="xdx_90D_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_pp0p0" title="Investment">200,000</span>
in Applied Holding Corp. (&#8220;Applied&#8221;). Applied is a captive insurance company and the Company received a non-convertible promissory
note for its investment which becomes due in <span id="xdx_909_eus-gaap--DebtConversionConvertedInstrumentExpirationOrDueDateYear_c20181201__20181231__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_zAV3R6Wns4O9" title="Debt conversion due date">2021</span> but may be extended with notice for a maximum of <span id="xdx_901_eus-gaap--DebtInstrumentTerm_dc_c20181201__20181231__srt--RangeAxis__srt--MaximumMember__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_zHa8vFs4Tp08" title="Debt Instrument, Term">two years</span>. In accordance with FASB
Codification Topic 320, <i>Investments &#8211; Debt Securities</i> (ASC 320), the Company has elected to account for this investment
at cost. During the year ended December 31, 2021, the Company entered an agreement with Applied to extend the maturity date of this promissory
note to December 6, 2023.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">d<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In December 2018 the Company invested $<span id="xdx_909_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_pp0p0" title="Investment">500,000</span>
in Trio Opportunity Corp. (&#8220;Trio&#8221;), a privately held entity. Trio is a real estate investment vehicle and the Company received
<span id="xdx_907_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20181201__20181231__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_z842Q9hJQfki" title="Non-voting shares">50,000</span> non-voting Class B shares at $<span id="xdx_90C_eus-gaap--SharePrice_iI_pid_c20181231__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember_zla8cTHUPr2g" title="Share price">10.00</span>/share. In accordance with FASB Codification Topic 321, <i>Investments &#8211; Equity Securities
(</i>ASC 321), the Company has elected to account for this investment at cost.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(e<span style="font-variant: small-caps">)
</span></b>In January 2019, the Company invested $<span id="xdx_904_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20190101__20190131__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" title="Investment">1,001,000</span> in a Florida based LLC that is engaged in international sales of fertilizer
additives. The Company accounts for this investment using the equity method of accounting. According to the operating agreement, the
Company has a <span id="xdx_906_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20190131__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zrwGPcF01714" title="Ownership interest">50</span>% interest in the profit and loss of the Florida based LLC but does not have control. <span style="background-color: white">A
summary of the Company&#8217;s investment follows:</span></span></p>

<p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zjQX0cNnXGD" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zXj8rYv2FEnj" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_903_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zTuO79otRgA8" title="Balance, Beginning">1,141,033</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Additional payments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--AdditionalPayment_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Additional payment">2,518,684</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Gain in equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqvP8dT6B6C9" style="text-align: right" title="Gain in equity method investment">809,342</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Return of equity</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_ecustom--EquityMethodInvestmentReturnOfEquity_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity">(896,714</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zoihULlgbo8g" style="text-align: right" title="Balance, Beginning">3,572,345</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gain in equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1FaUcXX8EQ5" style="text-align: right" title="Gain in equity method investment">454,023</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Return of equity</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zAj22AtBd1x1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity">(325,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zolSGiKsRZfj" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending">3,701,368</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AF_zKPyIielNJeh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Further
to the original investment amount, the Company had placed $<span id="xdx_904_eus-gaap--RestrictedCashNoncurrent_iI_pp0p0_c20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zsSg9PhxeDFl" title="Restricted cash, released upon reaching milestone">1,000,000</span> in trust, which was released during the year ended December 31,
2020 upon the Florida based LLC reaching a milestone related to earnings before interest, taxes and depreciation (&#8220;EBITDA&#8221;)
targets. The additional payments of $<span id="xdx_903_eus-gaap--AssetAcquisitionConsiderationTransferredContingentConsideration_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zm26x62uld94" title="Contigent consideration of additional payment">2,518,684</span> made during the year ended December 31, 2020 related to contingent consideration which
was dependent on the Florida based LLC meeting certain performance millstones during the year. Summarized profit and loss information
related to the equity accounted investment is as follows:</span></p>

<p id="xdx_89C_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8cnNEy23dV4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zgvVrMUUqwzl" style="display: none">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zU0XZFKBlZ98" style="width: 14%; text-align: right" title="Net sales">11,543,277</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="width: 14%; text-align: right" title="Net sales">12,138,511</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--RealizedInvestmentGainsLosses_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z3C5zeqFyTA6" style="text-align: right" title="Gross profit">3,517,387</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--RealizedInvestmentGainsLosses_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Gross profit">4,688,654</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1VYMQW7W6S3" style="text-align: right" title="Net income">908,045</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_985_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Net income">1,618,685</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AD_zgxHwQ73uRpj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, the Company had sales of $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zU35bATX7KP4" title="Revenue">7,982,281</span> (2020 - $<span id="xdx_90D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1dfp7t1XK3i" title="Revenue">7,476,047</span>) to the Florida Based LLC, of which $<span id="xdx_90E_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zlb9TzRoYdi2" title="Accounts Receivable">2,202,345</span>
is included within Accounts Receivable as at December 31, 2021 (2020 - $<span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zg0P4A4ufDx6" title="Accounts Receivable">1,593,272</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(f)
</b>In December 2020, the Company invested $<span id="xdx_90F_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20201201__20201231__dei--LegalEntityAxis__custom--LygosIncMember_pp0p0" title="Investment">500,000</span> in Lygos Inc., a privately held entity, under a Simple Agreement for Future Equity
agreement. Both companies <span style="background-color: white">intend to work together in pursuit of sustainable aspartic acid through
synthetic biology<span style="font-variant: small-caps">.</span></span> <span style="font-variant: small-caps">T</span>he Company has
elected to account for this investment at cost. A summary of the Company&#8217;s investment follows:</span></p>

<p id="xdx_89B_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--LygosIncMember_zPBmG5oMNeUb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B9_zGaeSay6wX36" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2019</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span id="xdx_90D_eus-gaap--EquityMethodInvestments_iS_pdp0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zVTNpSLrGV3g" title="Balance, Beginning"><span style="-sec-ix-hidden: xdx2ixbrl1170">-</span></span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 82%; padding-bottom: 1.5pt">Acquisition</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AcquisitionCosts_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zhuXJr3UhhUc" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Acquisition">500,000</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--EquityMethodInvestments_iS_pdp0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zUYgjZ9sOb78" style="text-align: right" title="Balance, Beginning">500,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Additional payment</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_ecustom--AdditionalPayment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zICLbseBTTfi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Additional payment">500,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98E_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zXIa7z3v9El5" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending">1,000,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>


<p id="xdx_8AD_zhkteg4m8Fwg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract">
<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 );">- References</a><div><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;">us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_EquityMethodInvestmentsDisclosureTextBlock">
<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 entire disclosure for equity method investments and joint ventures. Equity method investments are investments that give the investor the ability to exercise significant influence over the operating and financial policies of an investee. Joint ventures are entities owned and operated by a small group of businesses as a separate and specific business or project for the mutual benefit of the members of the group.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -URI http://asc.fasb.org/topic&amp;trid=2196965<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;">us-gaap_EquityMethodInvestmentsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>27
<FILENAME>R17.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196696424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHORT-TERM LINE OF CREDIT<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermDebtTextBlock', window );">SHORT-TERM LINE OF CREDIT</a></td>
<td class="text"><p id="xdx_80F_eus-gaap--ShortTermDebtTextBlock_zax4mFAAEIkd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>11.
<span>Short-Term Line of Credit <b><span id="xdx_82B_zIpwgU0ceoXe" style="display: none">SHORT-TERM LINE OF CREDIT</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">a<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In September 2018, the Company signed a new
agreement with Harris Bank (&#8220;Harris&#8221;) to renew the expiring credit line. The revolving line of credit is for an aggregate
amount of up to the lesser of (i) $<span id="xdx_903_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_c20180930__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember_pp0p0" title="Aggregate amount of revolving line of credit">2,500,000</span>, or (ii) <span id="xdx_905_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20180901__20180930__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember_z0kbE77Ncsbi" title="Eligible percentage of domestic accounts receivable">80</span>% of eligible domestic accounts receivable and certain foreign accounts receivable
plus <span id="xdx_90A_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20180901__20180930__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember_zHBWVaVuL9Ga" title="Percentage of foreign accounts receivable of inventory">60</span>% of inventory. The loan had an annual interest rate of 4.75%. The revolving line of credit at Harris was paid in October 2020,
upon the opening of the revolving line of credit at Midland States Bank (&#8220;Midland&#8221;).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(b)
</b>In April 2020 and in August 2021, ENP Investments signed a new agreement with Midland to renew the expiring credit line. The revolving
line of credit is for an aggregate amount up to $<span id="xdx_901_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20210831__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_zsnxNNkG16na" title="Aggregate amount of revolving line of credit">3,000,000</span>. The interest rate of this loan is subject to change from time to time based
on changes in an independent index which is the 1 month LIBOR as published in the Wall Street Journal (the &#8220;Index&#8221;). Interest
on the unpaid principal balance of this loan will be calculated using a rate of <span id="xdx_90E_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20210801__20210830__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zKx86ZEQDTo2" title="Debt effective rate">1.000</span> percentage points over the Index. Under no circumstances
will the interest rate of this loan be less than <span id="xdx_90D_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20210831__srt--RangeAxis__srt--MaximumMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zDhnxUSw5NV3" title="Annual interest rate of loan">4.250</span>% per annum or more than the maximum rate allowed by applicable law. The interest
rate at December 31, 2021 is <span id="xdx_90F_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zQkyHFggnav5" title="Annual interest rate of loan">4.25</span>% (2020 &#8211; <span id="xdx_90A_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zAcaPTtypEdg" title="Annual interest rate of loan">4.5</span>%). In March 2022, a new agreement was signed, increasing the revolving line of credit
to an aggregate amount $<span id="xdx_90E_eus-gaap--LineOfCredit_iI_c20220331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zShFT1oI8jki" title="Revolving line of credit">4,000,000</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
revolving line of credit contains customary affirmative and negative covenants, including the following: compliance with laws, provisions
of financial statements and periodic reports, payment of taxes, maintenance of inventory and insurance, maintenance of operating accounts
at Midland, Midland&#8217;s access to collateral, formation or acquisition of subsidiaries, incurrence of indebtedness, dispositions
of assets, granting liens, changes in business, ownership or business locations, engaging in mergers and acquisitions, making investments
or distributions and affiliate transactions. NanoChem is a guarantor of <span id="xdx_906_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zAIcKlvxE78k" title="Loan guaranteed rate">65</span>% of all the principal and other loan costs not to exceed $<span id="xdx_906_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_znZKOKm3USg2" title="Line of Credit">1,950,000</span>.
As of December 31, 2021, ENP Investments was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">To
secure the repayment of any amounts borrowed under the revolving line of credit, ENP Investments granted Midland a security interest
in all inventory, equipment and fixtures and acknowledges a separate commercial security agreement from guarantor to Midland dated February
15, 2011.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term
borrowings outstanding under the revolving line as of December 31, 2021 were $<span id="xdx_90C_eus-gaap--ShortTermBorrowings_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zoXE6NK6pHpl" title="Short-term borrowings">811,665</span> (2020 - $<span id="xdx_90E_eus-gaap--ShortTermBorrowings_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_pp0p0" title="Short-term borrowings">541,456</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(c)
</b>In October 2021, the Company signed a new agreement with Midland to replace the expiring credit line at Harris. The revolving line
of credit is for an aggregate amount of up to the lesser of (i) $<span id="xdx_90F_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z0vu52ndMiud" title="Aggregate amount of revolving line of credit">3,500,000</span>, or (ii) <span id="xdx_90D_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zKXM2y9IFsY7" title="Eligible percentage of domestic accounts receivable">80</span>% of eligible domestic accounts receivable and
certain foreign accounts receivable plus <span id="xdx_90E_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zaRBjeb8JC25" title="Percentage of foreign accounts receivable of inventory">50</span>% of inventory. Interest on the unpaid principal balance of this loan will be calculated using
a rate of <span id="xdx_901_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20211001__20211031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zkITkB36FBE" title="Debt effective rate">0.500</span> percentage points over the Index. Under no circumstances will the interest rate of this loan be less than <span id="xdx_90C_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20211031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_z3dCYz392nBc" title="Debt instrument interest rate">4.50</span>% per annum
or more than the maximum rate allowed by applicable law. The interest rate at December 31, 2021 is <span id="xdx_909_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zeqV8IiE4m1f" title="Annual interest rate of loan">4.50</span>% (2020 &#8211; <span id="xdx_90C_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20201231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zNCHGTw5Djm4" title="Annual interest rate of loan">3.75</span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
revolving line of credit contains customary affirmative and negative covenants, including the following: compliance with laws, provision
of financial statements and periodic reports, payment of taxes, maintenance of inventory and insurance, maintenance of operating accounts
at Midland, Midland&#8217;s access to collateral, formation or acquisition of subsidiaries, incurrence of indebtedness, dispositions
of assets, granting liens, changes in business, ownership or business locations, engaging in mergers and acquisitions, making investments
or distributions and affiliate transactions. The covenants also require that the Company maintain a minimum ratio of qualifying financial
assets to the sum of qualifying financial obligations. As of December 31, 2021, Company was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">To
secure the repayment of any amounts borrowed under the revolving line of credit, the Company granted Midland a security interest in substantially
all of the assets of NanoChem, exclusive of intellectual property assets.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term
borrowings outstanding under the revolving line as of December 31, 2021 were $<span id="xdx_90F_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zr2PZourhaqk" title="Line of Credit">1,489,154</span> (2020 - $<span id="xdx_906_eus-gaap--LinesOfCreditCurrent_c20201231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_pp0p0" title="Line of Credit">1,574,617</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ShortTermDebtTextBlock">
<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 entire disclosure for short-term debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI http://asc.fasb.org/topic&amp;trid=2208564<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;">us-gaap_ShortTermDebtTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>28
<FILENAME>R18.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196720536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LONG TERM DEBT<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtTextBlock', window );">LONG TERM DEBT</a></td>
<td class="text"><p id="xdx_805_eus-gaap--LongTermDebtTextBlock_zdJZydd6i4jf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>12.
<span>Long Term Debt <b><span id="xdx_82F_zcVGBibsHtv7" style="display: none">LONG TERM DEBT</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">a<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In October 2018, NanoChem signed a $<span id="xdx_902_eus-gaap--DebtInstrumentFaceAmount_c20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Promissory note">4,100,000</span>
term loan with Harris with a rate of prime to be repaid over <span id="xdx_903_eus-gaap--DebtInstrumentTerm_dtY_c20181003__20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z87eYfN9ARS7" title="Debt instrument, term">7</span> years with equal monthly installments plus interest along two payments
consisting of <span id="xdx_904_ecustom--PaymentOfMonthlyInstallmentsInterestRate_pid_dp_uPure_c20181003__20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zFLghSUSBgYj" title="Payment of monthly installments interest rate">25</span>% prior year cash flow recapture, capped at $<span id="xdx_901_eus-gaap--DebtInstrumentPeriodicPayment_c20181003__20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Debt instrument periodic payment">300,000</span>, due May 31, 2019 and 2020. The money was used to purchase a <span id="xdx_90B_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zl9Atv0BqNT8" title="Ownership interest percentage">65</span>%
interest in ENP Investments. Interest expense for the year ended December 31, 2020 was $<span id="xdx_90F_eus-gaap--InterestExpenseDebt_pp0p0_c20200101__20201231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zSsbE3jhFBOb" title="Interest expense">75,874</span>. This loan was paid in October 2020 upon
opening of credit facilities at Midland.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">b<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In April 2019, NanoChem signed a loan for
$<span id="xdx_903_eus-gaap--DebtInstrumentFaceAmount_c20190430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_pp0p0" title="Promissory note">1,100,000</span> with Harris with a rate of prime plus <span id="xdx_90B_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20190430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zfeANNredtV5" title="Debt instrument, interest rate, stated percentage">0.5</span>% for the purchase of new manufacturing equipment. The Company paid interest monthly
until February 2020, when equal monthly installments of the principal and interest were due until January 2024. Interest expense for
the year ended December 31, 2020 was $<span id="xdx_904_eus-gaap--InterestExpenseDebt_c20200101__20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_pp0p0" title="Interest expense">36,272</span>. This loan was paid in October 2020 upon opening of credit facilities at Midland.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">c<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In January 2018, ENP Investments signed a
$<span id="xdx_906_eus-gaap--DebtInstrumentFaceAmount_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Promissory note">200,000</span> promissory note with Midland with a rate of <span id="xdx_90E_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zyV5ncbMpow" title="Debt instrument, interest rate, stated percentage">5.250</span>% to be repaid over <span id="xdx_907_eus-gaap--DebtInstrumentTerm_dtY_c20180101__20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_znU4irB35WC9" title="Debt instrument, term">7</span> years with equal monthly installments plus interest.
This money was used to purchase production equipment and in May 2021, ENP Investments paid the loan in full with cash on hand. Interest
expense for the year ended December 31, 2021 was $<span id="xdx_90A_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z19XxWsVcgxl" title="Interest expense">2,788</span> (2020 - $<span id="xdx_90C_eus-gaap--InterestExpenseDebt_pp0p0_c20200101__20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zasitCrF0ime" title="Interest expense">7,588</span>). The principal balance owing at December 31, 2021 is $<span id="xdx_908_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_d0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zutjZ6q96nch" title="Debt balance owing">nil</span> (2020
- $<span id="xdx_90D_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z4SkbQoEBB84" title="Debt balance owing">125,543</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">d<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In March 2016, ENP Investments signed a $<span id="xdx_903_eus-gaap--DebtInstrumentFaceAmount_c20160331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Promissory note">45,941</span>
promissory note with Ford Motor Credit Company with a rate of <span id="xdx_907_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20160331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zzRIQsAQfoph" title="Debt instrument, interest rate, stated percentage">0.00</span>% interest to be repaid over <span id="xdx_90A_eus-gaap--DebtInstrumentTerm_dtY_c20160301__20160331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zDa4twNflega" title="Debt instrument, term">5</span> years with equal monthly installments.
In August 2020, the loan was paid in full.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>(</b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">e<span style="font-variant: small-caps">)
</span></span></b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In April 2020, NanoChem received a <span id="xdx_901_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zBRJMLyMAPDk" title="Debt instrument, term">two year</span>
loan of $<span id="xdx_904_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zFN65YlfIMg9" title="Promissory note">322,000</span> through the Paycheck Protection Program with a rate of <span id="xdx_901_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z98TxKrAS8hb" title="Debt instrument, interest rate, stated percentage">1</span>%. In March, 2021, the loan was forgiven by the Small Business
Administration and has been recorded as Other Income on the consolidated statements of income and comprehensive income for the year ended
December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(f)
</b>In April 2020, ENP Investments received a <span id="xdx_904_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zxIFzg3QUog" title="Debt instrument, term">two year</span> loan of $<span id="xdx_90D_eus-gaap--DebtInstrumentFaceAmount_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Promissory note">215,960</span> through the Paycheck Protection Program with a rate of <span id="xdx_90B_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_z5owmptV0Rq1" title="Debt instrument, interest rate, stated percentage">1</span>%. In
March, 2021, the loan was forgiven by the Small Business Administration and has been recorded as Other Income on the consolidated statements
of income and comprehensive income for the year ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(g)
</b>In October 2020, NanoChem signed a $<span id="xdx_90F_eus-gaap--DebtInstrumentFaceAmount_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Promissory note">1,980,947</span> term loan with Midland with a rate of <span id="xdx_903_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z7jAis4EyjBb" title="Debt instrument, interest rate, stated percentage">3.85</span>% to be repaid over <span id="xdx_902_eus-gaap--DebtInstrumentTerm_dtY_c20201001__20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z9fz3MCXtfjd" title="Debt instrument, term">5</span> years with equal monthly
payments including interest. The money was used to retire the debt at Harris related to the loan to purchase a <span id="xdx_906_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zNrmr9fV3HVa" title="Ownership interest percentage">65</span>% interest in ENP Investments.
Interest for the year ended December 31, 2021 was $<span id="xdx_906_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zLWJIovm2gkj" title="Interest expense">69,831</span> (2020 - $<span id="xdx_901_eus-gaap--InterestExpenseDebt_c20200101__20201231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_pp0p0" title="Interest expense">13,389</span>). The balance owing at December 31, 2021 is $<span id="xdx_90E_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zalheqJL8w48" title="Debt balance owing">1,554,044</span> (2020
- $<span id="xdx_900_eus-gaap--DebtDefaultLongtermDebtAmount_c20201231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Debt balance owing">1,920,976</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_898_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zJvDhmOhYQw3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has committed to the following repayments:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zkO0Q3J6R7gj" style="display: none">SCHEDULE OF INTEREST LOAN REPAYMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_907_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z2RLELj9IdWi" title="2022">382,705</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zUqHV2lOMiK6" style="text-align: right" title="2023">397,414</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98A_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zzomB3Owo9lg" style="text-align: right" title="2024">413,516</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">2025</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_983_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z7uwFqbraXJh" style="border-bottom: Black 1.5pt solid; text-align: right" title="2025">360,409</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AC_zxg52zp2gwdk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(h)
</b>In October 2020, NanoChem signed a loan for $<span id="xdx_90E_eus-gaap--DebtInstrumentFaceAmount_c20201031__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_pp0p0" title="Promissory note">894,253</span> with Midland with an interest rate <span id="xdx_908_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zrslzdjfoDVg" title="Debt instrument, interest rate, stated percentage">3.85</span>% to be repaid over two years with equal
monthly payments including interest. The funds were used to replace the loan at Harris for the purchase of new manufacturing equipment.
Interest expense for the year ended December 31, 2021 was $<span id="xdx_90E_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zUFmHwfeMMI7" title="Interest expense">24,827</span> (2020 - $<span id="xdx_90B_eus-gaap--InterestExpenseDebt_c20200101__20201231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_pp0p0" title="Interest expense">6,218</span>). The balance owing at December 31, 2021 is $<span id="xdx_90E_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zxwfyny75aTa" title="Debt balance owing">381,674</span>
(2020 - $<span id="xdx_909_eus-gaap--DebtDefaultLongtermDebtAmount_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Debt balance owing">822,380</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(i)
</b>In January 2020, ENP Mendota refinanced its mortgage and signed a loan for $<span id="xdx_90D_eus-gaap--DebtInstrumentFaceAmount_c20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_pp0p0" title="Promissory note">450,000</span> with Stock Yards Bank &amp; Trust to be repaid
over <span id="xdx_906_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zEQLoMTpAE0i" title="Debt instrument, term">10</span> years with monthly installments plus interest. Interest for the first five years is at <span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zDObm7Ko6uc2" title="Debt instrument, interest rate, stated percentage">4.35</span>% and it will be adjusted for the
last five years to the Cincinnati Federal Home Bank Loan <span id="xdx_902_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__srt--FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis__srt--FederalHomeLoanBankOfCincinnatiMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_z5Q7xjrPA1mb" title="Debt instrument, term">5</span> year fixed index plus <span id="xdx_906_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__srt--FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis__srt--FederalHomeLoanBankOfCincinnatiMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zfa4kbuvzMn6" title="Debt instrument, interest rate, stated percentage">2.5</span>%. Interest expense for the year ended December 31,
2021 was $<span id="xdx_904_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_zNpjs0yQ18sf" title="Interest expense">17,107</span> (2020 - $<span id="xdx_906_eus-gaap--InterestExpenseDebt_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_pp0p0" title="Interest expense">18,049</span>). The balance owing at December 31, 2021 is $<span id="xdx_90F_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zS52XGWgFBc3" title="Debt balance owing">430,880</span> (2020 - $<span id="xdx_907_eus-gaap--DebtDefaultLongtermDebtAmount_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_pp0p0" title="Debt balance owing">440,779</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89D_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zYX9114MX1Jk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has committed to the following repayments:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_z2z9lTHKdU56" style="display: none">SCHEDULE OF INTEREST LOAN REPAYMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_909_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zPcjih80ZYFl" title="2022">29,749</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zBGEVE3alHe5" style="text-align: right" title="2023">29,749</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98B_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zQGQAp5ZWBI3" style="text-align: right" title="2025">29,749</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">2025</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_989_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zdnMGS0ccLj7" style="border-bottom: Black 1.5pt solid; text-align: right" title="2025">29,749</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AF_zUeTgMUnWFr5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_890_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zDlxcW0x5J0l" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2021, Company was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BC_zddv8THbImJ1" style="display: none">SCHEDULE OF LOAN COVENANTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold">Continuity</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20210101__20211231_zBpDd1JsvKH9" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20200101__20201231_zouEcQcAiCMk" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LongTermDebt_iS_pp0p0_zF56tzaCsNRl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Balance, January 1</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">3,847,638</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">4,380,393</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ProceedsFromLoans_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Plus: Proceeds from loans</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1349">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,413,160</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_ecustom--ProceedsFromLoanAcquiredWithAcquisition_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Plus: Loan acquired with acquisition of ENP Realty</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1352">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">450,000</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--RepaymentsOfBankDebt_iN_pp0p0_di_z7Wfa0KQE4N9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Less: Forgiveness on PPP loans</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(537,960</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1356">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_pp0p0_di_zj07dnKMhLb5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Less: Payments on loan</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(943,080</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(4,395,915</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_408_eus-gaap--LongTermDebt_iE_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance, December 31</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,366,598</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">3,847,638</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A4_zUEUFxz8sQYf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p id="xdx_89E_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zlD96N4W2vQ" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zzm7v86wfPT5" style="display: none">SCHEDULE OF OUTSTANDING BALANCE LOAN</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold">Outstanding balance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">a) Long term debt &#8211; Harris Bank</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_zxIjmuX8HNvc" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1366">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_pdp0" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1368">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">b) Long term debt &#8211; Harris Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_zkcKMXdRNT97" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1370">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_pdp0" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1372">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">c) Long term debt &#8211; Midland States Bank</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z0Szl05z63ye" style="width: 16%; text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1374">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_pp0p0" style="width: 16%; text-align: right" title="Long-term Debt">125,543</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">d) Long term debt &#8211; Ford Credit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_zvnkahcpB0vh" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1378">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_pdp0" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1380">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">e) Long term debt &#8211; PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zJJe1FRLlSd7" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1382">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_pp0p0" style="text-align: right" title="Long-term Debt">322,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">f) Long term debt - PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zCMV8dAvLlCk" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1386">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_pp0p0" style="text-align: right" title="Long-term Debt">215,960</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">g) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zYZjQdY2Yu7i" style="text-align: right" title="Long-term Debt">1,554,044</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_pp0p0" style="text-align: right" title="Long-term Debt">1,920,976</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">h) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zIGWyQzrWaRh" style="text-align: right" title="Long-term Debt">381,674</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_pp0p0" style="text-align: right" title="Long-term Debt">822,380</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">i) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_z2wGuHePLfYb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term Debt">430,880</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term Debt">440,779</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Long-term Debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--LongTermDebt_iI_pp0p0_c20211231_zHD4j1ib0Zt7" style="text-align: right" title="Long-term Debt">2,366,598</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--LongTermDebt_c20201231_pp0p0" style="text-align: right" title="Long-term Debt">3,847,638</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Less: current portion</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20211231_zWMsVH9ij1wd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: current portion">(793,574</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20201231_zhXXib1qq172" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: current portion">(848,794</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--LongTermDebtNoncurrent_iI_pp0p0_c20211231_zD2kzuaN6BS5" style="border-bottom: Black 2.5pt double; text-align: right" title="Long term balance">1,573,024</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_984_eus-gaap--LongTermDebtNoncurrent_c20201231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Long term balance">2,998,844</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AE_z85PNFt0m3y3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_LongTermDebtTextBlock">
<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 entire disclosure for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI http://asc.fasb.org/topic&amp;trid=2208564<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;">us-gaap_LongTermDebtTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>29
<FILENAME>R19.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196677000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONVERTIBLE NOTE PAYABLE<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">CONVERTIBLE NOTE PAYABLE</a></td>
<td class="text"><p id="xdx_808_eus-gaap--DebtDisclosureTextBlock_zfVMBsOwiTj4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>13.
<span>Convertible Note Payable <b><span id="xdx_82C_zjOqL2wXfsC1" style="display: none">CONVERTIBLE NOTE PAYABLE</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
October 2018, the Company issued a convertible note payable in the amount of $<span id="xdx_900_eus-gaap--ConvertibleNotesPayable_c20181031__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_pp0p0" title="Convertible note payable">1,000,000</span> in connection with the acquisition of EnP Investments
LLC. The convertible note is due on or before <span id="xdx_900_eus-gaap--DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear_dd_c20181001__20181031__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_ztv2wQZBM7D2" title="Debt convertible due date">September 30, 2023</span> with <span id="xdx_90F_eus-gaap--DebtConversionConvertedInstrumentRate_pid_dp_uPure_c20181001__20181031__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_z1hjVYMeGb24" title="Debt conversion ratio">5</span>% interest due per year. At the option of the holder, the Note
may be converted into <span id="xdx_90B_eus-gaap--DebtConversionConvertedInstrumentSharesIssued1_pid_c20181001__20181031__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_zeyckbLQecY" title="Debt converted to shares">400,000</span> shares in the Company&#8217;s common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
June 2019, the holder opted to convert $<span id="xdx_90F_eus-gaap--DebtConversionConvertedInstrumentAmount1_c20190601__20190630__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pp0p0" title="Debt converted to shares, amount">500,000</span> of the convertible note payable into <span id="xdx_90C_eus-gaap--DebtConversionConvertedInstrumentSharesIssued1_c20190601__20190630__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pdd" title="Debt converted to shares">200,000</span> shares of the Company&#8217;s common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
April 2020, the Company repaid the remaining principal balance of $<span id="xdx_902_eus-gaap--DebtConversionConvertedInstrumentAmount1_c20200401__20200430__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pp0p0" title="Debt converted to shares, amount">500,000</span> and accrued interest of $<span id="xdx_90E_eus-gaap--DebtInstrumentIncreaseAccruedInterest_c20200401__20200430__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pp0p0" title="Accrued interest">13,046</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_DebtDisclosureTextBlock">
<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 entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI http://asc.fasb.org/topic&amp;trid=2208564<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>30
<FILENAME>R20.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196620952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAXES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">INCOME TAXES</a></td>
<td class="text"><p id="xdx_800_eus-gaap--IncomeTaxDisclosureTextBlock_zjSVv83JGqm1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>14.
<span>Income Taxes <span id="xdx_823_zJKm2vKab4Ca" style="display: none">INCOME TAXES</span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89C_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zhXy14BwRlH8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
provision for income tax expense (benefit) is comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zIKV0MBR38fg" style="display: none">SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT)</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231_zznX9k44fEDl" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20200101__20201231_zYbdMcJRW6mb" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zpU4nxvSzL3g" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Current tax, federal</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">1,309,503</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">739,113</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_maCITEBzvlG_ztBreY74xPtj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Current tax, state</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">592,394</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">334,361</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--CurrentForeignTaxExpenseBenefit_maCITEBzvlG_zbv9lmqqUbH8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Current tax, foreign</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">91,285</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">124,414</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iT_pp0p0_mtCITEBzvlG_maITEBz6BY_zAmv1UYdyF24" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Current tax, total</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,993,182</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,197,888</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_maDITEBzP63_zSyaSAm05Fk1" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Deferred income tax, federal</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">250,153</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">158,308</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_maDITEBzP63_zUlJl5zuNB2k" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred income tax, state</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">113,164</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">71,616</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredForeignIncomeTaxExpenseBenefit_maDITEBzP63_zY27j8MzXNzf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Deferred income tax, foreign</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1454">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">179,629</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz6BY_zGUWIX66RRfi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Deferred income tax, total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">363,317</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">409,553</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz6BY_z9mp6rKc9gQ3" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,356,499</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,607,441</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>


<p id="xdx_8A8_zJO7mIM0lUec" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_897_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zb9vNqNKt8S" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table reconciles the income tax expense at the U.S. Federal statutory rate to income tax expense at the Company&#8217;s effective
tax rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B4_zu5scLi9Z85h" style="display: none">SCHEDULE OF RECONCILIATION OF INCOME TAXES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231_zXc8yV8zkw3c" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_490_20200101__20201231_zntZieUtCgW7" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Income before tax</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">6,650,756</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">5,190,975</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_zLRRcG5UOrd9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">US statutory tax rates</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">30.50</td><td style="padding-bottom: 1.5pt; text-align: left">%</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">30.50</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr id="xdx_40E_ecustom--ExpectedIncomeTaxRecovery_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Expected income tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,028,481</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,583,247</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--IncomeTaxReconciliationNondeductibleExpense_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Non-deductible items</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(29,508</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(60,470</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--IncomeTaxReconciliationOtherAdjustments_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Change in estimates and other</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(65,027</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">603,422</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--IncomeTaxReconciliationChangeInEnactedTaxRate_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Change in enacted tax rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">337,961</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1481">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--IncomeTaxReconciliationForeignIncomeTaxRateDifferential_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign tax rate difference</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(86,696</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(120,372</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Change in valuation allowance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">171,288</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(398,386</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--IncomeTaxExpenseBenefit_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Total income taxes</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2,356,499</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,607,441</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--CurrentIncomeTaxExpenseBenefit_z3VCIfDA4USh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Current income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,993,182</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,197,888</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_zZKzGRevZ5u5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Deferred tax expense (recovery)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">363,317</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">409,553</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_zm04aIqHB76k" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Total income tax expense</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2,356,499</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,607,441</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


<p id="xdx_8A0_zRk2enydd8l7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Deferred
taxes reflect the tax effects of temporary differences between the carrying amounts of assets and liabilities for financial reporting
purposes. Deferred tax assets (liabilities) at December 31, 2021 and 2020 are comprised of the following:</span></p>

<p id="xdx_895_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_z9nqjPHOeW29" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zpx4QTlaOwV8" style="display: none">SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES)</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Canada</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-align: left; padding-left: 10pt">Non capital loss carryforwards</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z0OFHJOItPqc" style="width: 14%; text-align: right" title="Non capital loss carryforwards">1,443,371</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="width: 14%; text-align: right" title="Non capital loss carryforwards">1,638,357</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zGoz46ANdiY2" style="text-align: right" title="Intangible assets">19,849</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Intangible assets">18,863</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Property, equipment and leaseholds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zRvbxhXcIHka" style="text-align: right" title="Property, equipment and leaseholds">587,408</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Property, equipment and leaseholds">624,016</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Financial instruments</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zBBMSCqbfQH7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Financial instruments"><span style="-sec-ix-hidden: xdx2ixbrl1515">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Financial instruments">26,690</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_ecustom--DeferredTaxAssetsLiabilitiesGross_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z91gA393M848" style="text-align: right" title="Deferred tax asset (liability)">2,050,628</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--DeferredTaxAssetsLiabilitiesGross_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Deferred tax asset (liability)">2,307,926</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Valuation allowance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zZihIEpGnnei" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance">(2,050,628</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zgCKL5SSDBU6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance">(2,307,926</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Net deferred tax asset</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_ecustom--DeferredTaxAssetNet_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zlHzuZuMTp4j" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net Deferred tax asset"><span style="-sec-ix-hidden: xdx2ixbrl1527">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_981_ecustom--DeferredTaxAssetNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net Deferred tax asset"><span style="-sec-ix-hidden: xdx2ixbrl1529">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>US</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2021</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2020</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Net operating loss carryforwards</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z5DhnUchqwFi" style="text-align: right" title="Non capital loss carryforwards"><span style="-sec-ix-hidden: xdx2ixbrl1531">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="text-align: right" title="Non capital loss carryforwards"><span style="-sec-ix-hidden: xdx2ixbrl1533">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zxOsMADbQByl" style="text-align: right" title="Intangible assets"><span style="-sec-ix-hidden: xdx2ixbrl1535">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="text-align: right" title="Intangible assets"><span style="-sec-ix-hidden: xdx2ixbrl1537">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zLzZEBp3Fqkk" style="text-align: right" title="Investments">(241,880</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zcjysrhuJ5Ga" style="text-align: right" title="Investments">(167,635</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Property, equipment and leaseholds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zAaup1v6dBGe" style="text-align: right" title="Property, equipment and leaseholds">(68,282</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="text-align: right" title="Property, equipment and leaseholds">(66,116</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt"><span style="font-family: Times New Roman, Times, Serif">Property, equipment and leaseholds</span></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zT8Pe4EomrTh" style="text-align: right" title="Property, equipment and leaseholds">12,697</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zXHE08whnfzc" style="text-align: right" title="Property, equipment and leaseholds">201,393</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Financial instruments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0IPCgahGEJ9" style="text-align: right" title="Financial instruments"><span style="-sec-ix-hidden: xdx2ixbrl1551">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="text-align: right" title="Financial instruments">98,210</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Deferred tax asset not recognized</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_ecustom--DeferredTaxAssetNotRecognized_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8fmlH1x77U6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"><span style="-sec-ix-hidden: xdx2ixbrl1555">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_ecustom--DeferredTaxAssetNotRecognized_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"><span style="-sec-ix-hidden: xdx2ixbrl1557">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Net deferred tax asset (liability)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_989_ecustom--DeferredTaxAssetLiabilitiesNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zG0di8pQy32d" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)">(297,465</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_984_ecustom--DeferredTaxAssetLiabilitiesNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)">65,852</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AF_zezOmz0g4aa8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has non-capital loss carryforwards of approximately $<span id="xdx_901_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zLgu9WsnXFde" title="Operating loss carryforwards">6,275,526</span> (2020 - $<span id="xdx_909_eus-gaap--OperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" title="Operating loss carryforwards">6,068,054</span>) which may be carried forward to apply against
future year income tax for Canadian income tax purposes, subject to the final determination by taxation authorities, expiring in the
following years:</span></p>

<p id="xdx_89B_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zwhwvsgTC2l7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B2_zZ7CVnDqFLHi" style="display: none">SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1.5pt; text-align: center">`</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: right">Loss</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 66%; text-align: right">2029</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandTwentyNineTaxYearMember_zUIagJc2hIv6" style="width: 30%; text-align: right" title="Total">891,014</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right">2030</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zS68ahb6bGNg" style="text-align: right" title="Total">1,081,844</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: right">2031</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneTaxYearMember_zR9uFe9AJ6hl" style="text-align: right" title="Total">1,245,577</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right">2037</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenTaxYearMember_zHNRFAGUkS15" style="text-align: right" title="Total">2,238,533</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: right">2038</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyEightTaxYearMember_zKiQnMQuwq6h" style="text-align: right" title="Total">372,149</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right">2039</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineTaxYearMember_zVw76eInNyE1" style="text-align: right" title="Total">72,378</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: right">2040</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyTaxYearMember_zsRdBU1IpPA7" style="text-align: right" title="Total">166,494</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right; padding-bottom: 1.5pt">2041</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyOneTaxYearMember_z483yRk4B1t1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">207,537</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z3nu3wpmTcug" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">6,275,526</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A2_zGwIXl5gS6Ik" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
at December 31, 2021, the Company has no net operating loss carryforwards available for US tax purposes.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Accounting
for Uncertainty for Income Tax</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
at December 31, 2021 and 2020, the Company&#8217;s consolidated balance sheets did not reflect a liability for uncertain tax positions,
nor any accrued penalties or interest associated with income tax uncertainties. The Company has no income tax examinations in progress.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncomeTaxDisclosureTextBlock">
<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 entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32857-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330215-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32705-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6424409&amp;loc=d3e44925-109338<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>31
<FILENAME>R21.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196731352">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME PER SHARE<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">INCOME PER SHARE</a></td>
<td class="text"><p id="xdx_808_eus-gaap--EarningsPerShareTextBlock_zYQNjKmTfFu5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>15.
<span>Income Per Share <span id="xdx_822_zzjzkGwbTqj2" style="display: none">INCOME PER SHARE</span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zC5Qv9C2ZJIk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company presents both basic and diluted income per share on the face of its consolidated statements of income. Basic and diluted income
per share are calculated as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B5_zRKNSDA8fBZ7" style="display: none">SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20210101__20211231_zTnaJD69jXL8" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20200101__20201231_zN7R8zCjus62" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--NetIncomeLoss_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Net income attributable to controlling interest</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">3,449,162</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">2,977,050</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Weighted average common shares outstanding:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zSgjzHebABCa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12,316,254</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12,240,641</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zK6trIznl7l1" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12,505,522</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12,302,552</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income per common share attributable to controlling interest:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--EarningsPerShareBasicAndDiluted_pid_zmwdHaij9uWk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Basic and diluted</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">0.28</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">0.24</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AE_zeFuNgVgBEi5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certain
stock options whose terms and conditions are described in Note 16, &#8220;Stock Options&#8221; could potentially dilute basic EPS in
the future, but were not included in the computation of diluted EPS because to do so would have been anti-dilutive. Those anti-dilutive
options are as follows.</span></p>

<p id="xdx_898_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_ztagcukRm9sa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zBMAIldF5Ele" style="display: none">SCHEDULE OF ANTI-DILUTIVE OPTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20210101__20211231_zYv5MGJZGD8a" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_494_20200101__20201231_zGLHq8pAQOuk" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Anti-dilutive options</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">21,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">507,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AF_zSDTZt07dEc8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">There
were <span id="xdx_906_eus-gaap--PreferredStockSharesIssued_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zdxnaiYynTj7" title="Preferred stock, shares issued"><span id="xdx_903_eus-gaap--PreferredStockSharesIssued_iI_pid_do_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zffwy9ewQZf6" title="Preferred stock, shares issued"><span id="xdx_902_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zP04jOprSRI" title="Preferred stock, shares outstanding"><span id="xdx_90E_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zfnGQ2H898ma" title="Preferred stock, shares outstanding">no</span></span></span></span> preferred shares issued and outstanding during the years ended December 31, 2021 or 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<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 );">- References</a><div><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;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_EarningsPerShareTextBlock">
<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 entire disclosure for earnings per share.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109243012&amp;loc=SL65017193-207537<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<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;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>32
<FILENAME>R22.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196637896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>STOCK OPTIONS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">STOCK OPTIONS</a></td>
<td class="text"><p id="xdx_80B_eus-gaap--DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_zeWFW91uVtSi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>16. <span>Stock
Options</span></b></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. <b><span id="xdx_82A_z8H87AP339g4" style="display: none">STOCK OPTIONS</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has a stock option plan (&#8220;Plan&#8221;). The purpose of this Plan is to provide additional incentives to key employees,
officers, directors and consultants of the Company and its subsidiaries in order to help attract and retain the best available personnel
for positions of responsibility and otherwise promote the success of the Company&#8217;s business. It is intended that options issued
under this Plan constitute non-qualified stock options. The general terms of awards under the option plan are that <span id="xdx_90B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_pid_dp_uPure_c20210101__20211231_z5B2k3Hf7cSg" title="Options granted percentage">100</span>% of the options
granted will vest the year following the grant. The maximum term of options granted is <span id="xdx_902_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_dtY_c20210101__20211231_zHI7wATrWLt5" title="Options maximum granted term">5</span> years and the exercise price for all options
are issued for not less than fair market value at the date of the grant.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_899_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_znjS7O4MEt0d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the Company&#8217;s stock option activities for the years ended December 31, 2021 and 2020:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zzIeDf6q4poh" style="display: none">SCHEDULE OF STOCK OPTION ACTIVITIES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Number of shares</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Exercise <br/> price per share</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Weighted <br/> average <br/> exercise price</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20200101__20201231_zS2Rbc4KtpCa" style="width: 14%; text-align: right" title="Number of shares, Beginning Balance">635,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zOq9sd0lBBh" title="Exercise price per share, Beginning Balance">0.75</span> &#8211; <span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zhfSMjkGhmFd" title="Exercise price per share, Beginning Balance">1.75</span></span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20200101__20201231_zIDPQSsbtJyc" style="width: 14%; text-align: right" title="Weighted average exercise price, Beginning Balance">1.35</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231_zIsvPjNeS8f1" style="text-align: right" title="Number of shares, Granted">172,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20200101__20201231_zt1Hg13sVnx9" style="text-align: right" title="Exercise price per share, Granted">2.44</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_z6VdbbYVPvMc" style="text-align: right" title="Weighted average exercise price, Granted">2.44</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cancelled or expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20200101__20201231_zzBWqgMuG00i" style="text-align: right" title="Number of shares, Cancelled or expired">(13,000</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zfVOUb3Odtr1" title="Exercise price per share, Cancelled or expired">2.44</span> &#8211; <span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_znXBmOoBuE1j" title="Exercise price per share, Cancelled or expired">3.46</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zWsLMnDjH1o3" style="text-align: right" title="Weighted average exercise price, Cancelled or expired">2.75</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20200101__20201231_zGfonJxbp7V7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised">(45,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zcWkZ7vtwilh" title="Exercise price per share, Exercised">0.75</span> &#8211; <span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zH2RFT5bz6Yd" title="Exercise price per share, Exercised">1.05</span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zU0HGU9pN4qd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised">0.88</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_z8WhswlEmPn2" style="text-align: right" title="Number of shares, Beginning Balance">749,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zTzvjifCOc73" title="Exercise price per share, Beginning Balance">0.75</span> &#8211; <span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zroR7IBAf8t5" title="Exercise price per share, Beginning Balance">4.13</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zsIC8HS7ywva" style="text-align: right" title="Weighted average exercise price, Beginning Balance">2.42</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_zCXLWRfEOJg1" style="text-align: right" title="Number of shares, Granted">170,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20210101__20211231_ztGhNRlwXHvb" style="text-align: right" title="Exercise price per share, Granted">3.61</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zprT2Hkh4erl" style="text-align: right" title="Weighted average exercise price, Granted">3.61</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cancelled or expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zDsbJuSjxuGl" style="text-align: right" title="Number of shares, Cancelled or expired">(34,799</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_z7o32cI3BWpa" title="Exercise price per share, Cancelled or expired">1.42</span> &#8211; <span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z9oLms0KgJce" title="Exercise price per share, Cancelled or expired">3.46</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zGa6kYbs1XHa" style="text-align: right" title="Weighted average exercise price, Cancelled or expired">2.30</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_zeXGPRJWWwXk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised">(94,701</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zl7vUN1Ys8Hf" title="Exercise price per share, Exercised">0.75</span> &#8211; <span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zwczgqY1iu5h" title="Exercise price per share, Exercised">3.46</span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zzEfYVu9ydZd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised">1.58</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20210101__20211231_znM7mTqiOJKk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Ending Balance">789,500</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zf5WJRS4gp32" title="Exercise price per share, Ending Balance">1.42</span> &#8211; <span id="xdx_904_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zXEFq17pHWHf" title="Exercise price per share, Ending Balance">4.13</span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20210101__20211231_zU6vMW1gdVk1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance">2.78</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Exercisable, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20210101__20211231_zuMK2aQovmDi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares Exercisable, Ending Balance">564,500</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zHBclOTtJGp1" title="Exercise price per share Exercisable, Ending Balance">1.42</span> &#8211; <span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zBtXOLQ4ATdd" title="Exercise price per share Exercisable, Ending Balance">4.13</span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_iE_pid_c20210101__20211231_zFkcSP8GMUNg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price Exercisable, Ending Balance">2.63</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


<p id="xdx_8A0_zMsc0MKMWvRi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
weighted-average remaining contractual life of outstanding options is <span id="xdx_90C_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_dtY_c20210101__20211231_zouuIHPC5Ul1" title="Weighted-average remaining contractual life">3.20</span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_894_eus-gaap--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_zuCejW6QIz39" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of each option grant is calculated using the following weighted average assumptions:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zDrAqEWJzNQc" style="display: none">SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 85%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Expected life &#8211; years</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right"><span id="xdx_90D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_z1aOnTmciazd" title="Expected life - years">3.0</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right"><span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20200101__20201231_zEFMk2orsHd" title="Expected life - years">3.0</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Interest rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_z39LuDBouI9j" style="text-align: right" title="Interest rate">1.23</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20200101__20201231_za5SBEjiZHHa" style="text-align: right" title="Interest rate">0.37</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Volatility</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_ztcvnyZGjLJd" style="text-align: right" title="Volatility">63.28</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20200101__20201231_zC7tSSSdxbJ8" style="text-align: right" title="Volatility">70.14</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Weighted average fair value of options granted</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zHaABFnsUw32" style="text-align: right" title="Weighted average fair value of options granted">1.23</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20200101__20201231_zn7kRvqkujjh" style="text-align: right" title="Weighted average fair value of options granted">1.12</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A5_zRIBX5Q0wNX" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, the Company granted <span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zQ62JT4pM8j5" title="Stock options granted">45,000</span> (2020 &#8211; <span id="xdx_909_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zwJa9cbyv8hh" title="Stock options granted">45,000</span>) stock options to consultants and has applied ASC 718
using the Black-Scholes option-pricing model, which resulted in expenses of $<span id="xdx_904_eus-gaap--StockOptionPlanExpense_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_ziV7vLRVYyme" title="Stock option expense">13,860</span> (2020 - $<span id="xdx_909_eus-gaap--StockOptionPlanExpense_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_pp0p0" title="Stock option expense">10,080</span>). Options granted in other years
resulted in additional expenses of $<span id="xdx_904_ecustom--AdditionalExpensesDueToOptionsGranted_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zUrqincI1B61" title="Additional expenses due to options granted">51,210</span> (2020 &#8211; $<span id="xdx_909_ecustom--AdditionalExpensesDueToOptionsGranted_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_pp0p0" title="Additional expenses due to options granted">43,905</span>). During the year ended December 31, 2021, employees were granted <span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zgIImuFaXuSe" title="Stock options granted">125,000</span>
(2020 &#8211; <span id="xdx_90E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_z8RjH5TJJs4g" title="Stock options granted">127,000</span>) stock options, which resulted in expenses of $<span id="xdx_901_eus-gaap--StockOptionPlanExpense_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zGSn9K0qXZ9d" title="Stock option expense">38,500</span> (2020 &#8211; $<span id="xdx_904_eus-gaap--StockOptionPlanExpense_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_pp0p0" title="Stock option expense">28,316</span>). Options granted in other years resulted
in additional expenses in the amount of $<span id="xdx_909_ecustom--AdditionalExpensesDueToOptionsGranted_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_z7VNLET6Lrpi" title="Additional expenses due to options granted">106,542</span> for employees during the year ended December 31, 2021 (2020 - $<span id="xdx_90A_ecustom--AdditionalExpensesDueToOptionsGranted_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_pp0p0" title="Additional expenses due to options granted">73,711</span>). There were <span id="xdx_906_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zYb3BkHUBTnc" title="Stock options exercised">61,500</span>
employee and <span id="xdx_90B_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_ziOWcqpH7OS9" title="Stock options exercised">33,201</span> consultant stock options exercised during the year ended December 31, 2021 (2020 &#8211; <span id="xdx_904_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zwAUSXuzCu11" title="Stock options exercised">35,000</span> employee; <span id="xdx_90D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zC62VFSkZHj6" title="Stock options exercised">10,000</span>
consultant).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2021, there was approximately $<span id="xdx_90A_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zq3zi5BiONr3" title="Compensation expense related to non-vested awards">229,918</span> of compensation expense related to non-vested awards. This expense is expected
to be recognized over a weighted average period of <span id="xdx_908_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_dtY_c20210101__20211231_zDJljnQaKsqi" title="Compensation expense related to non-vested awards, weighted average period">1.0</span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
aggregate intrinsic value of vested options outstanding at December 31, 2021 is $<span id="xdx_905_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zshdH4mmQ2d" title="Aggregate intrinsic value of vested options">712,945</span> (2020 &#8211; $<span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_pp0p0_dxL_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zDHSn9EB1FF" title="Aggregate intrinsic value of vested options::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1758">nil</span></span>). The intrinsic value of
options exercised during the year was $<span id="xdx_903_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_pp0p0_c20210101__20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zwpqNa9FJyih" title="Aggregate intrinsic value of vested options exercised">203,701</span> (2020 - $<span id="xdx_90B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_pp0p0_c20200101__20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z4dm0oFd29Ti">56,230</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<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 entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI http://asc.fasb.org/topic&amp;trid=2228938<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;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<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 );">- References</a><div><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;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R23.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440275865704">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CAPITAL STOCK<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">CAPITAL STOCK</a></td>
<td class="text"><p id="xdx_808_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_z8XGhNlav3yl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>17. <span>Capital
Stock</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. <b><span id="xdx_82A_z0i7qj6scvp8" style="display: none">CAPITAL STOCK</span></b></span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, <span id="xdx_907_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__custom--EmployeesStockOptionMember_z6dnol2sk4C8" title="Stock options exercised">61,500</span> shares were issued upon the exercise of employee stock options (2020 &#8211; <span id="xdx_90D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__us-gaap--DerivativeInstrumentRiskAxis__custom--EmployeesStockOptionMember_zOmvq8C2pskg" title="Stock options exercised">35,000</span>) and <span id="xdx_90E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__custom--ConsultantsStockOptionsMember_zkThfUnhqcvh" title="Stock options exercised">33,201</span>
shares were issued upon the exercise of consultant stock options (2020 &#8211; <span id="xdx_90E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__us-gaap--DerivativeInstrumentRiskAxis__custom--ConsultantsStockOptionsMember_zt4bcYOhrx96" title="Stock options exercised">10,000</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
March 19, 2020, the Company suspended the annual dividend until further notice due to the uncertainty surrounding the COVID-19 virus.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<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 );">- References</a><div><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;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<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 entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496158-112644<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496158-112644<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496171-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496171-112644<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496189-112644<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496158-112644<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI http://asc.fasb.org/topic&amp;trid=2208762<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496189-112644<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496158-112644<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496171-112644<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496189-112644<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 16<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496180-112644<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496158-112644<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(e)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>34
<FILENAME>R24.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196752152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>NON-CONTROLLING INTERESTS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_NoncontrollingInterestAbstract', window );"><strong>Noncontrolling Interest [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestDisclosureTextBlock', window );">NON-CONTROLLING INTERESTS</a></td>
<td class="text"><p id="xdx_800_eus-gaap--MinorityInterestDisclosureTextBlock_zG8yz2X2osTe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>18.
<span>Non-Controlling Interests <b><span id="xdx_825_zt15dL5UqNUf" style="display: none">NON-CONTROLLING INTERESTS</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ENP
Investments is a limited liability corporation (LLC) that <span style="background-color: white">manufactures and distributes golf, turf
and ornamental agriculture products in Mendota, Illinois.</span> The Company owns a <span id="xdx_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zTucbgQaqYm2" title="Subsidiary company ownership interest rate">65</span>% interest in ENP Investments through its wholly-owned
subsidiary NanoChem. An unrelated party owns the remaining <span id="xdx_900_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_z3RnYMwBq3e7" title="Related party owner ship percentage">35</span>% interest in ENP Investments. As of December 31, 2020, ENP Mendota is a
wholly owned subsidiary of ENP Investments. ENP Mendota leases warehouse space. For financial reporting purposes, the assets, liabilities
and earnings of both of the LLC&#8217;s are consolidated into these financial statements. The unrelated third party&#8217;s ownership
interest in the LLC is recorded in non-controlling interests in these consolidated financial statements. The non-controlling interest
represents the non-controlling unitholder&#8217;s interest in the earnings and equity of ENP Investments. ENP Investments is allocated
to the BCPA segment.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ENP
Investments makes cash distributions to its equity owners based on formulas defined within its Ownership Interest Purchase Agreement
dated October 1, 2018. Distributions are defined in the Ownership Interest Purchase Agreement as cash on hand to the extent it exceeds
current and anticipated long-term and short-term needs, including, without limitation, needs for operating expenses, debt service, acquisitions,
reserves, and mandatory distributions, if any.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">From
the effective date of acquisition onward, the minimum distributions requirements under the Ownership Interest Purchase Agreement were
satisfied. The total distribution from the effective date of acquisition onward was $<span id="xdx_90E_eus-gaap--PaymentsToMinorityShareholders_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zYUiWS0GgQGl" title="Partnership distribution to non-controlling interest">1,924,995</span>.</span></p>

<p id="xdx_89D_ecustom--ScheduleOfDistributionsTableTextBlock_zea70KsXuEaj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_z1sol5lcRGog" style="display: none">SCHEDULE OF DISTRIBUTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_909_eus-gaap--MinorityInterest_iS_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zb5hPXiwTtN8" title="Distribution to noncontrolling interests, Beginning balance">2,550,149</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Distribution</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyvr3wsiDbD4" style="text-align: right" title="Distribution">(594,882</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Non-controlling interest share of income</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zv8cxceY2kad" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income">606,484</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--MinorityInterest_iS_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyrkhqvgJlk5" style="text-align: right" title="Distribution to noncontrolling interests, Beginning balance">2,561,751</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Distribution</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zBWbrMElBeSg" style="text-align: right" title="Distribution">(804,003</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Non-controlling interest share of income</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zpZmgpFeH8bl" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income">845,095</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98D_eus-gaap--MinorityInterest_iE_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zbjMg473C1J5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Distribution to noncontrolling interests, Ending balance">2,602,843</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AC_zPfa6Sx7r0O2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2021, the Company had sales of $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpInvestmentMember_zkOaKJpxurN9" title="Revenue">4,877,690</span> (2020 - $<span id="xdx_90C_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpInvestmentMember_zXdhwtGzkgYl" title="Revenue">4,094,622</span>) to the party that holds <span id="xdx_908_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20211231__srt--OwnershipAxis__custom--EnpInvestmentMember_ziIju1KkX4oj" title="Equity Method Investment, Ownership Percentage">35</span>% interest in ENP
Investments, of which $<span id="xdx_906_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__srt--OwnershipAxis__custom--EnpInvestmentMember_ziIuvlMmHNe5" title="Accounts Receivable">2,215,119</span> is included within Accounts Receivable as of December 31, 2021 (2020 &#8211; $<span id="xdx_90B_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__srt--OwnershipAxis__custom--EnpInvestmentMember_zykCJi68W745" title="Accounts Receivable">2,056,631</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestDisclosureTextBlock">
<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 entire disclosure for noncontrolling interest in consolidated subsidiaries, which could include the name of the subsidiary, the ownership percentage held by the parent, the ownership percentage held by the noncontrolling owners, the amount of the noncontrolling interest, the location of this amount on the balance sheet (when not reported separately), an explanation of the increase or decrease in the amount of the noncontrolling interest, the noncontrolling interest share of the net Income or Loss of the subsidiary, the location of this amount on the income statement (when not reported separately), the nature of the noncontrolling interest such as background information and terms, the amount of the noncontrolling interest represented by preferred stock, a description of the preferred stock, and the dividend requirements of the preferred stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -URI http://asc.fasb.org/topic&amp;trid=2197479<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;">us-gaap_MinorityInterestDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_NoncontrollingInterestAbstract">
<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 );">- References</a><div><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;">us-gaap_NoncontrollingInterestAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R25.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196758936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</a></td>
<td class="text"><p id="xdx_802_eus-gaap--SegmentReportingDisclosureTextBlock_zw2LWlr7dgqh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>19. <span>Segmented,
Significant Customer Information and Economic Dependency</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. <b><span id="xdx_82D_zdr6NfUY1ZCk" style="display: none">SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</span></b></span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company operates in two segments:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)
Energy and water conservation products (as shown under the column heading &#8220;EWCP&#8221; below), which consists of a (i) liquid swimming
pool blankets which saves energy and water by inhibiting evaporation from the pool surface, and (ii) food-safe powdered form of the active
ingredient within the liquid blankets and which are designed to be used in still or slow moving drinking water sources.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
Biodegradable polymers (&#8220;BCPA&#8217;s&#8221;), also known as TPA&#8217;s, used by the petroleum, chemical, utility and mining industries
to prevent corrosion and scaling in water piping. This product can also be used in detergents to increase biodegradability and in agriculture
to increase crop yields by enhancing fertilizer uptake.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accounting policies of the segments are the same as those described in Note 2, <i>Significant Accounting Policies</i>. The Company evaluates
performance based on profit or loss from operations before income taxes, not including nonrecurring gains and losses and foreign exchange
gains and losses.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s reportable segments are strategic business units that offer different, but synergistic products and services. They are
managed separately because each business requires different technology and marketing strategies.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_898_eus-gaap--ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_z9JpYl8VfcX4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year
ended December 31, 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BE_z0ESYCLHXiFc" style="display: none">SCHEDULE OF REPORTABLE SEGMENTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">EWCP</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">BCPA</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Consolidated</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: justify">Sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zbTIyQNLISx" style="width: 14%; text-align: right" title="Sales">420,811</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z2k9VpxaP1T8" style="width: 14%; text-align: right" title="Sales">33,995,524</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zFj3U5O0DhG7" style="width: 14%; text-align: right" title="Sales">34,416,335</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zcx7l3qMsNa" style="text-align: right" title="Interest expense"><span style="-sec-ix-hidden: xdx2ixbrl1817">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zeVOc9LVx5Ne" style="text-align: right" title="Interest expense">199,930</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zOjOtdFsRDSi" style="text-align: right" title="Interest expense">199,930</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zc5IDI00Uh5e" style="text-align: right" title="Depreciation">40,247</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPBdp4HuUDv2" style="text-align: right" title="Depreciation">925,688</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJDPoEAHRAOf" style="text-align: right" title="Depreciation">965,935</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Current and deferred income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJS9lIy0kfW" style="text-align: right" title="Current and deferred income tax expense">24,384</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zzz2lOtxWwVi" style="text-align: right" title="Current and deferred income tax expense">2,361,298</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zfsxliJ06Qg9" style="text-align: right" title="Current and deferred income tax expense">2,385,682</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Segment profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zXZBpTniEIE3" style="text-align: right" title="Segment profit">(368,994</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zUuBichGMrLe" style="text-align: right" title="Segment profit">3,818,156</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_ztiqPWrcCDJh" style="text-align: right" title="Segment profit">3,449,162</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Segment assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zoHbfr1qBjdk" style="text-align: right" title="Segment assets">1,929,537</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z3NIQmNJ6Nyf" style="text-align: right" title="Segment assets">37,621,733</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_ecustom--Segmentassets_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z1gbw8JexfB3" style="text-align: right" title="Segment assets">39,551,270</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Expenditures for segment assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pdp0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zp8NMpih4Rxe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"><span style="-sec-ix-hidden: xdx2ixbrl1847">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zHDv4dYXQPZh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets">782,219</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPPrOnJMOaw4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets">782,219</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year
ended December 31, 2020:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">EWCP</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">BCPA</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Consolidated</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: justify">Sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales">334,423</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales">31,073,031</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales">31,407,454</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense">54</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense">260,603</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--InterestExpense_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense">260,657</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation">41,969</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation">809,703</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--DepreciationNonproduction_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation">851,672</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Current and deferred income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense">121,164</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense">1,486,277</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense">1,607,441</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Segment profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit">(536,220</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit">3,513,270</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ProfitLoss_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit">2,977,050</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Segment assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets">2,111,501</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets">32,975,887</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--Segmentassets_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets">35,087,388</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Expenditures for segment assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"><span style="-sec-ix-hidden: xdx2ixbrl1889">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets">1,071,108</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets">1,071,108</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AE_zUzkHsIuUrlk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89F_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zGJ4aCueOhLa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Sales
by territory are shown below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BB_z5CCCs7BAQ47" style="display: none">SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--CA_zgjIwDWnm8O8" style="width: 14%; text-align: right" title="Sales">525,900</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" style="width: 14%; text-align: right" title="Sales">562,626</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">United States and abroad</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zJeRCfzX6ti" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales">33,890,435</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales">30,844,828</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231_zt1EE3Tz0lNb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales">34,416,335</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales">31,407,454</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A1_zlQZLvFtBoGc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89B_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zpIZcCRVBrV9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s long-lived assets (property, equipment, intangibles, goodwill, leaseholds, patents and right of use assets) are located
in Canada and the United States as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B9_zQh1ee9jBluj" style="display: none">SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--CA_zrJKWXVr4Fc" style="width: 14%; text-align: right" title="Long-lived assets">191,752</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" style="width: 14%; text-align: right" title="Long-lived assets">445,663</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">United States</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--US_z2dur2RGH2d6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets">10,105,202</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--US_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets">10,519,903</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231_zlD9rPf2jJ19" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets">10,296,954</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98D_eus-gaap--NoncurrentAssets_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets">10,965,566</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AC_z0ucIFVIoM69" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Three
customers accounted for $<span id="xdx_902_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_z0VRy0Ab9mH" title="Accounts receivable">16,917,948</span> (<span id="xdx_90B_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zDHstQhStsG6" title="Accounted risk percentage">49</span>%) of sales made in 2021 (2020 - $<span id="xdx_902_eus-gaap--AccountsReceivableNet_c20201231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_pp0p0" title="Accounts receivable">14,713,127</span> or <span id="xdx_909_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20200101__20201231__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zdPxFNUcYzc5">47</span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<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 );">- References</a><div><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;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_SegmentReportingDisclosureTextBlock">
<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 entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 34<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8981-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8721-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 26<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8844-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8657-108599<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8721-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI http://asc.fasb.org/topic&amp;trid=2134510<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;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>36
<FILENAME>R26.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196801656">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUBSEQUENT EVENTS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_SubsequentEventsAbstract', window );"><strong>Subsequent Events [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">SUBSEQUENT EVENTS</a></td>
<td class="text"><p id="xdx_80C_eus-gaap--SubsequentEventsTextBlock_z7yV2ORWwlb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>20.
<span>Subsequent Events. <b><span id="xdx_825_zSTU0yR6baNa" style="display: none">SUBSEQUENT EVENTS</span></b></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company granted <span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20220329__srt--TitleOfIndividualAxis__custom--EmployeeMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zM8AjQZMW3Ue" title="Stock options granted">5,000</span> stock options to an employee and issued <span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20220329__srt--TitleOfIndividualAxis__custom--EmployeeMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--TypeOfArrangementAxis__custom--UponExerciseofStockOptionsMember_zAkOEac91P1c" title="Stock options granted">20,500
</span></span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">shares to employees upon the exercise of
stock options in the three months ended March 29, 2022.</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsAbstract">
<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 );">- References</a><div><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;">us-gaap_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_SubsequentEventsTextBlock">
<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 entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<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;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>37
<FILENAME>R27.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440192311896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SIGNIFICANT ACCOUNTING POLICIES (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text"><p id="xdx_847_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_z0fbKof6pB61" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)
<i><span id="xdx_866_zEIqvYh3ceg5">Cash and Cash Equivalents</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company considers all highly liquid investments purchased with an original or remaining maturity of less than three months at the date
of purchase to be cash equivalents. Cash and cash equivalents are maintained with several financial institutions.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventories and Cost of Sales</a></td>
<td class="text"><p id="xdx_84D_eus-gaap--InventoryPolicyTextBlock_z0ma3OFf0Aii" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
<i><span id="xdx_865_zEaoiY9TyXHb">Inventories and Cost of Sales</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has three major classes of inventory: completed goods, work in progress and raw materials and supplies. In all classes, inventories
are stated at the lower of cost and net realizable value. The Company applies the first-in, first-out or weighted average cost formulae
to inventories in different subsidiaries. Cost of sales includes all expenditures incurred in bringing the goods to the point of sale.
Inventory costs and costs of sales include direct costs of the raw material, inbound freight charges, warehousing costs, handling costs
(receiving and purchasing) and utilities and overhead expenses related to the Company&#8217;s manufacturing and processing facilities.
Shipping and handling charges billed to customers are included in revenue (2021 - $<span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zSVrag0rl4X3" title="Revenue from Contract with Customer, Excluding Assessed Tax">465,493</span>; 2020 &#8211; $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zmWn9LthbdCa" title="Revenue from Contract with Customer, Excluding Assessed Tax">427,920</span>). Shipping and handling
costs incurred are included in cost of goods sold (2021 - $<span id="xdx_900_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zB0aamnpVjB7" title="Cost of Goods and Services Sold">1,058,674</span>; 2020 &#8211; $<span id="xdx_903_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zgvfzDomXrC3" title="Cost of Goods and Services Sold">1,051,588</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy', window );">Allowance for Doubtful Accounts</a></td>
<td class="text"><p id="xdx_841_eus-gaap--PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_zvNHD6szx3G7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(c)
<i><span id="xdx_866_zyTwkWBDX9l">Allowance for Doubtful Accounts</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company provides an allowance for doubtful accounts when management estimates collectability to be uncertain. Accounts receivable are
continually reviewed to determine which, if any, accounts are doubtful of collection. In making the determination of the appropriate
allowance amount, the Company considers current economic and industry conditions, relationships with each significant customer, overall
customer credit-worthiness and historical experience.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property, Equipment, Leaseholds and Intangible Assets</a></td>
<td class="text"><p id="xdx_849_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_z1YulY4myp5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(d)
<i><span id="xdx_867_znxYHWPSLSHd">Property, Equipment, Leaseholds and Intangible Assets</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_z5dWLyYYEZO5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following assets are recorded at cost and depreciated using the methods and annual rates shown below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zlPfzWVw30ke">SCHEDULE OF METHOD OF DEPRECIATION</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 70%; border-collapse: collapse; margin-right: auto">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 55%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 43%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Computer
    hardware</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z44jHLrrTpBi" title="Depreciation method used and annual rate">30%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Furniture
    and fixtures</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zy1kQmquukqi" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Manufacturing
    equipment</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zq5YxItyna4j" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Office
    equipment</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ziT4ptdsa0I5" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Boat</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z5elPWHeq8mf" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Building
    and improvements</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_905_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zV3slMEDjBmf" title="Depreciation method used and annual rate">10%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trailer</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_909_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDpKnIp7Srm9" title="Depreciation method used and annual rate">30%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Automobiles</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zJ7sAc2aaFOc" title="Depreciation method used and annual rate">Straight-line
    over 5 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Patents</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_zUQGnoGcumhf" title="Depreciation method used and annual rate">Straight-line
    over 17 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Technology</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zTRMGRr7mbz5" title="Depreciation method used and annual rate">Straight-line
    over 10 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Leasehold
    improvements</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zIjK1WBJXIP5" title="Depreciation method used and annual rate">Straight-line
    over lease term</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Customer
    relationships &#8211; ENP Investments</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--CustomerRelationshipsENPInvestmentsMember_z58VczgrDlqj" title="Depreciation method used and annual rate">Straight-line
    over 15 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Software
    &#8211; ENP Investments</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareENPInvestmentsMember_z7yQ8qdk10R" title="Depreciation method used and annual rate">Straight-line
    over 3 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  </table>
<p id="xdx_8A7_zSwoGnG8Yfga" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Impairment of Long-Lived Assets</a></td>
<td class="text"><p id="xdx_848_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zphhnjuMvRyc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">e)
<i><span id="xdx_86C_zXyL7qsob5K7">Impairment of Long-Lived Assets</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
accordance with FASB Codification Topic 360, <i>&#8220;Property, Plant and Equipment&#8221; </i>(ASC 360), the Company reviews long-lived
assets, including, but not limited to, property, equipment and leaseholds, patents and other assets, for impairment annually or whenever
events or changes in circumstances indicate the carrying amounts of assets may not be recoverable. The carrying value of long-lived assets
is assessed for impairment by evaluating operating performance and future undiscounted cash flows of the underlying assets. If the expected
future cash flows of an asset is less than its carrying value, an impairment measurement is indicated. Impairment charges are recorded
to the extent that an asset&#8217;s carrying value exceeds its fair value. Accordingly, actual results could vary significantly from
such estimates. There were no impairment charges during the periods presented.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign Currency</a></td>
<td class="text"><p id="xdx_84C_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_zi5V221GjRA7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(f)
<i><span id="xdx_86D_z177sSOyO1D8">Foreign Currency</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
functional currency of the Company is the U.S. dollar. The functional currency of three of the Company&#8217;s subsidiaries is the Canadian
dollar. The translation of the Canadian dollar to the reporting currency of the Company, the U.S. dollar, is performed for assets and
liabilities using exchange rates in effect at the balance sheet date. Revenue and expense transactions are translated using average exchange
rates prevailing during the year. Translation adjustments arising on conversion of the Company&#8217;s financial statements from the
subsidiary&#8217;s functional currency, Canadian dollars, into the reporting currency, U.S. dollars, are excluded from the determination
of income (loss) and are disclosed as other comprehensive income in the consolidated statements of income and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Foreign
exchange gains and losses relating to transactions not denominated in the applicable local currency are included in operating income
(loss) if realized during the year and in comprehensive income (loss) if they remain unrealized at the end of the year.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><p id="xdx_84F_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zOjsGQ63xU6h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(g)
<i><span id="xdx_866_zrnFwXrHme95">Revenue Recognition</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company generates revenue primarily from energy and water conservation products and biodegradable polymers, as further discussed in Note
19.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company follows a five-step model for revenue recognition. The five steps are: (1) identification of the contract(s) with the customer,
(2) identification of the performance obligation(s) in the contract(s), (3) determination of the transaction price, (4) allocation of
the transaction price to the performance obligation, and (5) recognition of revenue when (or as) the performance obligation is satisfied.
The Company has fulfilled its performance obligations when control transfers to the customer, which is generally at the time the product
is shipped since risk of loss is transferred to the purchaser upon delivery to the carrier. For shipments which are F.O.B. shipping point,
the Company has elected to account for shipping and handling activities as a fulfillment cost rather than as an additional promised service
and performance obligation.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Since
the Company&#8217;s inception, product returns have been insignificant; therefore, no provision has been established for estimated product
returns.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Deferred
revenues consist of products sold to distributors with payment terms greater than the Company&#8217;s customary business terms due to
lack of credit history or operating in a new market in which the Company has no prior experience. The Company defers the recognition
of revenue until the criteria for revenue recognition has been met and payments become due or cash is received from these distributors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_StockIssuedInExchangeForServicesPolicyTextBlock', window );">Stock Issued in Exchange for Services</a></td>
<td class="text"><p id="xdx_84B_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zAqkjZWRvUx7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(h)
<i><span id="xdx_861_z3cB9HFjbrOb">Stock Issued in Exchange for Services</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s common stock issued in exchange for services is valued at estimated fair market value based upon trading prices of the
Company&#8217;s common stock on the dates of the stock transactions. The corresponding expense of the services rendered is recognized
over the period that the services are performed.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CompensationRelatedCostsPolicyTextBlock', window );">Stock-based Compensation</a></td>
<td class="text"><p id="xdx_848_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zsGE27Jo2VMa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">i)
<i><span id="xdx_865_zlbIfOwhXJZk">Stock-based Compensation</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognizes compensation expense for all share-based payments in accordance with FASB Codification Topic 718, <i>Compensation
&#8212; Stock Compensation</i>, (ASC 718). Under the fair value recognition provisions of ASC 718, the Company recognizes share-based
compensation expense, net of an estimated forfeiture rate, over the requisite service period of the award.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value at grant date of stock options is estimated using the Black-Scholes option-pricing model. Compensation expense is recognized
on a straight-line basis over the stock option vesting period based on the estimated number of stock options that are expected to vest.
Shares are issued from treasury upon exercise of stock options.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomePolicyPolicyTextBlock', window );">Other Comprehensive Income</a></td>
<td class="text"><p id="xdx_841_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zZQrPnEebFff" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(j)
<i><span id="xdx_864_z2GP0Agodi6a">Other Comprehensive Income</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
comprehensive income refers to revenues, expenses, gains and losses that under generally accepted accounting principles are included
in comprehensive income, but are excluded from net income as these amounts are recorded directly as an adjustment to stockholders&#8217;
equity. The Company&#8217;s other comprehensive income is comprised only of unrealized foreign exchange gains and losses.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Income Per Share</a></td>
<td class="text"><p id="xdx_841_eus-gaap--EarningsPerSharePolicyTextBlock_zKUqclfujMLk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(k)
<i><span id="xdx_864_zKOSKwGhOYIi">Income Per Share</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Basic
earnings per share is computed by dividing income available to common stockholders by the weighted average number of common shares outstanding
in the period. Diluted earnings per share are calculated giving effect to the potential dilution of the exercise of options and warrants.
Common equivalent shares, composed of incremental common shares issuable upon the exercise of stock options and warrants are included
in diluted net income per share to the extent that these shares are dilutive. Common equivalent shares that have an anti-dilutive effect
on net income per share have been excluded from the calculation of diluted weighted average shares outstanding for the years ended December
31, 2021 and 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text"><p id="xdx_841_eus-gaap--UseOfEstimates_zMbsb2EoCDn4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">l)
<i><span id="xdx_864_zsve7NV2tYL5">Use of Estimates</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States requires
management to make estimates and assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated
financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from
those estimates and would impact the results of operations and cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Estimates
and underlying assumptions are reviewed at each period end. Revisions to accounting estimates are recognized in the period in which the
estimates are revised and in any future periods affected.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Significant
areas requiring the use of management estimates include assumptions and estimates relating to the valuation of goodwill and intangible
assets, asset impairment analysis, share-based payments, valuation allowances for deferred income tax assets, determination of useful
lives of property, equipment and leaseholds and intangible assets, recoverability of accounts receivable, recoverability of investments,
discount rates for right of use assets and the valuation of inventory.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value of Financial Instruments</a></td>
<td class="text"><p id="xdx_84B_eus-gaap--FairValueOfFinancialInstrumentsPolicy_z0BH9V9e5lSd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 35.45pt; text-align: justify; text-indent: 0.55pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(m)
<i><span id="xdx_86A_zGAaOHYPJVZ6">Fair Value of Financial Instruments</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fair
value is defined as the exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal
or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.
Valuation techniques used to measure fair value must maximize the use of observable inputs and minimize the use of unobservable inputs.
The standard describes a fair value hierarchy based on three levels of inputs described below, of which the first two are considered
observable and the last unobservable, that may be used to measure fair value.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
    1 &#8211; Quoted prices in active markets for identical assets or liabilities.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
    2 &#8211; Inputs other than Level 1 that are observable, either directly or indirectly, such as quoted prices for similar assets
    or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable
    market data for substantially the full term of the assets or liabilities.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
    3 &#8212; Unobservable inputs that are supported by little or no market activity which is significant to the fair value of the assets
    or liabilities.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair values of cash and cash equivalents, term deposits, accounts receivable, accounts payable, accrued liabilities and the short term
line of credit for all periods presented approximate their respective carrying amounts due to the short term nature of these financial
instruments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of the long term debt for all periods presented approximates their respective carrying amounts due to these financial instruments
being at market rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesPolicyTextBlock', window );">Contingencies</a></td>
<td class="text"><p id="xdx_849_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zx06inet32O9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(n)
<i><span id="xdx_86E_zDRybwmA0BIb">Contingencies</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certain
conditions may exist as of the date the consolidated financial statements are issued which may result in a loss to the Company but which
will only be resolved when one or more future events occur or fail to occur. The Company&#8217;s management and its legal counsel assess
such contingent liabilities, and such assessment inherently involves an exercise of judgment. In assessing loss contingencies related
to legal proceedings that are pending against the Company or unasserted claims that may result in such proceedings, the Company&#8217;s
legal counsel evaluates the perceived merits of any legal proceedings or unasserted claims as well as the perceived merits of the amount
of relief sought or expected to be sought therein.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If
the assessment of a contingency indicates that it is probable that a material loss has been incurred and the amount of the liability
can be estimated, the estimated liability would be accrued in the Company&#8217;s consolidated financial statements. If the assessment
indicates that a potential material loss contingency is not probable, but is reasonably possible, or is probable but cannot be estimated,
then the nature of the contingent liability, together with an estimate of the range of possible loss if determinable and material, would
be disclosed.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Loss
contingencies considered remote are generally not disclosed unless they involve guarantees, in which case the guarantees would be disclosed.
Legal fees associated with loss contingencies are expensed as incurred.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><p id="xdx_843_eus-gaap--IncomeTaxPolicyTextBlock_z0IrhDCYYHYi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(o)
<i><span id="xdx_86B_z8jDe7cyMYIi">Income Taxes</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income
taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for the expected future
tax consequences attributable to temporary differences between the financial statement carrying amounts of existing assets and liabilities
and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using
enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes
the enactment date. Deferred tax assets are reduced by a valuation allowance so that the assets are recognized only to the extent that
when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will be realized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
accordance with FASB ASC 740 &#8220;<i>Income taxes</i>&#8221; under the liability method, it is the Company&#8217;s policy to provide
for uncertain tax positions and the related interest and penalties based upon management&#8217;s assessment of whether a tax benefit
is more likely than not to be sustained upon examination by tax authorities. At December 31, 2021, the Company believes it has appropriately
accounted for any unrecognized tax benefits. To the extent the Company prevails in matters for which a liability for an unrecognized
benefit is established or is required to pay amounts in excess of the liability, the Company&#8217;s effective tax rate in a given financial
statement period may be affected. Interest and penalties associated with the Company&#8217;s tax positions are recorded as interest expense
in the consolidated statements of operations and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskCreditRisk', window );">Risk Management</a></td>
<td class="text"><p id="xdx_84B_eus-gaap--ConcentrationRiskCreditRisk_zI05byQ0hGPg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(p)
<i><span id="xdx_868_z1ZwYcJLZdke">Risk Management</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s credit risk is primarily attributable to its accounts receivable. The amounts presented in the accompanying consolidated
balance sheets are net of allowances for doubtful accounts, estimated by the Company&#8217;s management based on prior experience and
the current economic environment. The Company is exposed to credit-related losses in the event of non-payment by customers. Credit exposure
is minimized by dealing with only credit worthy counterparties. Revenue for the Company&#8217;s three primary customers totaled $<span id="xdx_902_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zOS4EpWjI00g" title="Revenue from Contract with Customer, Excluding Assessed Tax">16,917,947</span>
(<span id="xdx_902_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zfsy62oWCZHb" title="[custom:ConcentrationRiskThresholdPercentage]">49</span>%) for the year ended December 31, 2021 (2020 - $<span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zjszlIo1nerc" title="Revenue from Contract with Customer, Excluding Assessed Tax">14,713,127</span> or <span id="xdx_90E_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zuInXhPSLzB5" title="[custom:ConcentrationRiskThresholdPercentage]">47</span>%). Accounts receivable for the Company&#8217;s three primary customers
totaled $<span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z7SYKm5Nz7K" title="Accounts Receivable, after Allowance for Credit Loss">4,940,995</span> (<span id="xdx_909_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zMBGqPdzI448" title="[custom:ConcentrationRiskThresholdPercentage]">69</span>%) at December 31, 2021 (2020 - $<span id="xdx_902_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zz2ZhwbIOSQg" title="Accounts Receivable, after Allowance for Credit Loss">3,986,284</span> or <span id="xdx_90D_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zt2tPUAnV8O7" title="[custom:ConcentrationRiskThresholdPercentage]">68</span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
credit risk on cash and cash equivalents is limited because the Company limits its exposure to credit loss by placing its cash and cash
equivalents with major financial institutions. The Company maintains cash balances at financial institutions which at times exceed federally
insured amounts. The Company has not experienced any losses in such accounts.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company is exposed to foreign exchange and interest rate risk to the extent that market value rate fluctuations materially differ from
financial assets and liabilities, subject to fixed long-term rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
order to manage its exposure to foreign exchange risks, the Company is closely monitoring the fluctuations in the foreign currency exchange
rates and the impact on the value of cash and cash equivalents, accounts receivable, and accounts payable and accrued liabilities. The
Company has not hedged its exposure to currency fluctuations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company is exposed to interest rate risk to the extent that the fair value or future cash flows for financial liabilities will fluctuate
as a result of changes in market interest rates. The Company is exposed to interest rate risk on its long-term debt.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
order to manage its exposure to interest rate risk, the Company is closely monitoring fluctuations in market interest risks and will
refinance its long-term debt where possible to obtain more favourable rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsPolicy', window );">Equity Method Investment</a></td>
<td class="text"><p id="xdx_84E_eus-gaap--EquityMethodInvestmentsPolicy_zrNend6p3aPd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(q)
<i><span id="xdx_863_zZwSBY8hy1Rd">Equity Method Investment</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company accounts for investments using the equity method of accounting if the investment provides the Company the ability to exercise
significant influence, but not control, over the investee. <span id="xdx_909_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20210101__20211231_zqwPvvr5RrQk" title="Equity Method Investment, Description of Principal Activities">Significant influence is generally deemed to exist if the Company&#8217;s
ownership interest in the voting stock of the investee ranges between 20% and 50%, although other factors, such as representation on
the investee&#8217;s board of directors, are considered in determining whether the equity method of accounting is appropriate. </span>Under
the equity method of accounting, the investment is initially recorded at cost in the consolidated balance sheets under other assets and
adjusted for dividends received and the Company&#8217;s share of the investee&#8217;s earnings or losses together with other-than-temporary
impairments which are recorded through other income (loss), net in the consolidated statements of income and comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy', window );">Goodwill and intangible assets</a></td>
<td class="text"><p id="xdx_84E_eus-gaap--GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy_zUQPenO0Idsa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(r)
<i><span id="xdx_866_zXAPsxvAASYd">Goodwill and intangible assets</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
represents the excess of the purchase price of an acquired entity over the amounts assigned to the assets acquired and liabilities assumed.
Goodwill is not amortized, but is reviewed for impairment annually or more frequently if certain impairment conditions arise. The Company
performs an annual goodwill impairment review in the fourth quarter of each year at the reporting unit level. The evaluation begins with
a qualitative assessment of the factors that could impact the significant inputs used to estimate fair value. If after performing the
qualitative assessment, it is determined that it is more likely than not that the fair value of a reporting unit is greater than its
carrying amount, including goodwill, then no further analysis is necessary. However, if the results of the qualitative test are unclear,
the Company performs a quantitative test, which involves comparing the fair value of a reporting unit with its carrying amount, including
goodwill. The Company uses an income-based valuation method, determining the present value of future cash flows, to estimate the fair
value of a reporting unit. If the fair value of a reporting unit exceeds its positive carrying amount, goodwill of the reporting unit
is considered not impaired, and no further analysis is necessary. If the fair value of the reporting unit is less than its carrying amount,
goodwill impairment would be recognized equal to the amount of the carrying value in excess of the reporting unit&#8217;s fair value,
limited to the total amount of goodwill allocated to the reporting unit.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.05in; text-align: justify; text-indent: 0.3in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Intangible
assets primarily include trademarks and trade secrets with indefinite lives and customer-relationships with finite lives. Intangible
assets with indefinite lives are not amortized but are tested for impairment on an annual basis, or more frequently if indicators of
impairment are present. Indefinite lived intangible assets are assessed using either a qualitative or a quantitative approach. The qualitative
assessment evaluates factors including macro-economic conditions, industry and company-specific factors, legal and regulatory environments,
and historical company performance in assessing fair value. If it is determined that it is more likely than not that the fair value of
the intangible asset is less than its carrying value, a quantitative test is then performed. Otherwise, no further testing is required.
When using a quantitative approach, the Company compares the fair value of the intangible asset to its carrying amount, including goodwill.
If the estimated fair value of the intangible asset is less than the carrying amount of the intangible asset, impairment is indicated,
requiring recognition of an impairment charge for the differential.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Qualitative
assessments of goodwill and indefinite-lived intangible assets were performed in 2021 and 2020. Based on the results of the assessment,
it was determined that it is more likely than not the reporting unit, customer lists and trademarks had a fair value in excess of their
carrying value. Accordingly, no further impairment testing was completed and no impairment charges related to goodwill or indefinite-lived
intangibles were recognized during the year ended December 31, 2021 or 2020.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Finite-lived
intangible assets are amortized on a straight-line basis over their estimated useful lives. The Company reviews for impairment indicators
of finite-lived intangibles and other long-lived assets as described in the &#8220;Impairment of Long Lived Assets&#8221; significant
accounting policy.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Recent Accounting Pronouncements</a></td>
<td class="text"><p id="xdx_849_eus-gaap--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zpXvQfT1zgll" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(s)
<i><span id="xdx_86C_zbHK8bRW3XD2">Recent Accounting Pronouncements</span></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has implemented all applicable new accounting pronouncements that are in effect. Those pronouncements did not have any material
impact on the consolidated financial statements unless otherwise disclosed, and the Company does not believe that there are any other
new accounting pronouncements that have been issued that might have a material impact on its financial position or results of operations.</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_StockIssuedInExchangeForServicesPolicyTextBlock">
<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>Stock issued in exchange for services [Policy Text Block]</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;">FSI_StockIssuedInExchangeForServicesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_AccountingPoliciesAbstract">
<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 );">- References</a><div><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;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_CashAndCashEquivalentsPolicyTextBlock">
<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>Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4273-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_CommitmentsAndContingenciesPolicyTextBlock">
<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>Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123368208&amp;loc=d3e12565-110249<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 450<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6491354&amp;loc=d3e6049-115624<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;">us-gaap_CommitmentsAndContingenciesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_CompensationRelatedCostsPolicyTextBlock">
<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>Disclosure of accounting policy for salaries, bonuses, incentive awards, postretirement and postemployment benefits granted to employees, including equity-based arrangements; discloses methodologies for measurement, and the bases for recognizing related assets and liabilities and recognizing and reporting compensation expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b),(f(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_CompensationRelatedCostsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ComprehensiveIncomePolicyPolicyTextBlock">
<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>Disclosure of accounting policy for comprehensive income.</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;">us-gaap_ComprehensiveIncomePolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ConcentrationRiskCreditRisk">
<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>Disclosure of accounting policy for credit risk.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 825<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123345438&amp;loc=d3e61044-112788<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;">us-gaap_ConcentrationRiskCreditRisk</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_EarningsPerSharePolicyTextBlock">
<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>Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<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;">us-gaap_EarningsPerSharePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_EquityMethodInvestmentsPolicy">
<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>Disclosure of accounting policy for equity method of accounting for investments and other interests. Investment includes, but is not limited to, unconsolidated subsidiary, corporate joint venture, noncontrolling interest in real estate venture, limited partnership, and limited liability company. Information includes, but is not limited to, ownership percentage, reason equity method is or is not considered appropriate, and accounting policy election for distribution received.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 21D<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=SL94080555-108585<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;">us-gaap_EquityMethodInvestmentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_FairValueOfFinancialInstrumentsPolicy">
<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>Disclosure of accounting policy for determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 60<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=7493716&amp;loc=d3e21868-110260<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13279-108611<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;">us-gaap_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<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>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -URI http://asc.fasb.org/topic&amp;trid=2175825<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;">us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy">
<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>Disclosure of accounting policy for indefinite-lived intangible assets (that is, those intangible assets not subject to amortization). This accounting policy also may address how the entity assesses whether events and circumstances continue to support an indefinite useful life and how the entity assesses and measures impairment of such assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<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>Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109226317&amp;loc=d3e202-110218<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011434&amp;loc=d3e125687-122742<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;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_IncomeTaxPolicyTextBlock">
<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>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32247-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32847-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32840-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL116659661-227067<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32280-109318<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<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;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_InventoryPolicyTextBlock">
<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>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 330<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6471895&amp;loc=d3e55923-109411<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124437754&amp;loc=d3e543-108305<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<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 entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -URI http://asc.fasb.org/topic&amp;trid=2122394<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=SL108384541-122693<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124402435&amp;loc=SL124402458-218513<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123597120&amp;loc=SL121967933-165497<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (i)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123597120&amp;loc=SL121967933-165497<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124402435&amp;loc=SL124402458-218513<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (j)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=d3e31137-122693<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123597120&amp;loc=SL121967933-165497<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122150657&amp;loc=SL122150809-237846<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Publisher FASB<br> -Subparagraph (c)<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;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy">
<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>Disclosure of accounting policy for determining the estimated allowance for doubtful accounts for premium amounts due from policyholders, insureds, and other insurance entities. May include factors that management considered, such as historical loss experience and current economic and competitive conditions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 310<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=6933075&amp;loc=SL5748726-161290<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5144-111524<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;">us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock">
<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>Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<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;">us-gaap_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<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>Disclosure of accounting policy for revenue from contract with customer.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130561-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130566-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130563-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI http://asc.fasb.org/topic&amp;trid=49130388<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130566-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130563-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130566-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130564-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130566-203045<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;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_UseOfEstimates">
<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>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6191-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6161-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6143-108592<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6061-108592<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6132-108592<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<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;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>38
<FILENAME>R28.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196680328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SIGNIFICANT ACCOUNTING POLICIES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ScheduleOfMethodOfDepreciationTableTextBlock', window );">SCHEDULE OF METHOD OF DEPRECIATION</a></td>
<td class="text"><p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_z5dWLyYYEZO5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following assets are recorded at cost and depreciated using the methods and annual rates shown below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zlPfzWVw30ke">SCHEDULE OF METHOD OF DEPRECIATION</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 70%; border-collapse: collapse; margin-right: auto">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 55%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 43%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Computer
    hardware</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z44jHLrrTpBi" title="Depreciation method used and annual rate">30%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Furniture
    and fixtures</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zy1kQmquukqi" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Manufacturing
    equipment</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zq5YxItyna4j" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Office
    equipment</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ziT4ptdsa0I5" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Boat</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z5elPWHeq8mf" title="Depreciation method used and annual rate">20%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Building
    and improvements</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_905_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zV3slMEDjBmf" title="Depreciation method used and annual rate">10%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trailer</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_909_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDpKnIp7Srm9" title="Depreciation method used and annual rate">30%
    Declining balance</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Automobiles</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zJ7sAc2aaFOc" title="Depreciation method used and annual rate">Straight-line
    over 5 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Patents</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_zUQGnoGcumhf" title="Depreciation method used and annual rate">Straight-line
    over 17 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Technology</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zTRMGRr7mbz5" title="Depreciation method used and annual rate">Straight-line
    over 10 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Leasehold
    improvements</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zIjK1WBJXIP5" title="Depreciation method used and annual rate">Straight-line
    over lease term</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Customer
    relationships &#8211; ENP Investments</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--CustomerRelationshipsENPInvestmentsMember_z58VczgrDlqj" title="Depreciation method used and annual rate">Straight-line
    over 15 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Software
    &#8211; ENP Investments</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareENPInvestmentsMember_z7yQ8qdk10R" title="Depreciation method used and annual rate">Straight-line
    over 3 years</span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  </table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ScheduleOfMethodOfDepreciationTableTextBlock">
<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>Schedule Of Method Of Depreciation [Table Text Block]</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;">FSI_ScheduleOfMethodOfDepreciationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_AccountingPoliciesAbstract">
<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 );">- References</a><div><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;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R29.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440197087400">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LEASES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_FSI_DisclosureLeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock', window );">SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY</a></td>
<td class="text"><p id="xdx_893_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_znvdiWs5BOz4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below summarizes the right-of-use asset and lease liability for the year ended December 31, 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BE_zmYTjilXJPh8">SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: 0.5in; border-collapse: collapse; width: 90%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline; font-weight: bold; text-align: left">Right of Use Assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 84%">Balance at December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20200101__20201231_zxoFF5obpXR2" style="width: 14%; text-align: right" title="Right of Use Assets Beginning Balance">789,205</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Addition</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_ecustom--OperatingLeaseAssetsAddition_pp0p0_c20200101__20201231_z8tPdp5n7ouh" style="text-align: right" title="Addition">260,661</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Termination</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--OperatingLeasesAssetsTermination_c20200101__20201231_pp0p0" style="text-align: right" title="Termination">(234,980</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20200101__20201231_z4wEdD1YCbV1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation">(331,773</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance at December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zPKax8oCy2oj" style="text-align: right" title="Right of Use Assets Ending Balance">483,113</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zLbzOPUeSl2g" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation">(265,846</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20210101__20211231_zAFXdNrBCaU8" style="text-align: right" title="Right of Use Assets Ending Balance">217,267</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-decoration: underline; font-weight: bold; text-align: left">Lease Liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance at December 31, 2019</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_985_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20200101__20201231_zJ22uqJEIwc6" style="text-align: right" title="Lease Liability Beginning Balance">789,205</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Addition</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--OperatingLeasesLiabilityAddition_c20200101__20201231_pp0p0" style="text-align: right" title="Addition">260,661</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Termination</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_ecustom--OperatingLeasesLiabilityTermination_pp0p0_c20200101__20201231_zsyS7IMrCghj" style="text-align: right" title="Termination">(234,980</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Lease interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--LeaseInterestExpense_c20200101__20201231_pp0p0" style="text-align: right" title="Lease interest expense">53,768</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Payments</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20200101__20201231_zco2cj0Ysagi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments">(385,541</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance at December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_980_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_z63JfCGl6Jr1" style="text-align: right" title="Lease Liability Ending Balance">483,113</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Lease interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_zctDyBbRYAh7" style="text-align: right" title="Lease interest expense">22,057</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Payments</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20210101__20211231_z9R3fmOKH9wg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments">(287,903</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance at December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_982_eus-gaap--OperatingLeaseLiability_iE_pp0p0_c20210101__20211231_z8d0g1z3ncfa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Lease Liability Ending Balance">217,267</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Short-term portion</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20211231_zKSKEoTDAhg4" style="text-align: right" title="Short-term portion">77,715</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Long-term portion</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20211231_z3iPAaXNtF67" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term portion">139,552</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_982_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20211231_zVOwesMLPETe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">217,267</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">SCHEDULE OF UNDISCOUNTED RENT PAYMENTS</a></td>
<td class="text"><p id="xdx_892_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_z4THXWU4keZ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Undiscounted
rent payments are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zdve3Wfqljr">SCHEDULE OF UNDISCOUNTED RENT PAYMENTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2022</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_499_20211231_zP2IDO4kxUn3" style="text-align: right">78,240</td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_ztTzIN3bp74h" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">78,240</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_pp0p0_maLOLLPz1VZ_zRiGeaZt7Cw5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">77,100</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_pp0p0_maLOLLPz1VZ_zu52hjG56X59" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">70,440</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_pp0p0_maLOLLPz1VZ_zMDIJXaMjux2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">2025</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">71,940</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_pp0p0_mtLOLLPz1VZ_zyqqLngmSJv" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Total</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">297,720</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_pp0p0_di_zPwpe5PojJug" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">Impact of discounting</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(80,453</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify; padding-bottom: 1.5pt">Lease liability, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">217,267</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DisclosureLeasesAbstract">
<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 );">- References</a><div><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;">FSI_DisclosureLeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</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_FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock">
<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>Summary Of Rightofuse Asset And Lease Liability [Table Text Block]</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;">FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<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>Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>40
<FILENAME>R30.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196652136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ACCOUNTS RECEIVABLE (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock', window );">SCHEDULE OF ACCOUNTS RECEIVABLE</a></td>
<td class="text"><p id="xdx_893_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_zKbmmJlrLhFg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zGEO4ZSBJohl">SCHEDULE OF ACCOUNTS RECEIVABLE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_497_20211231_zVVUF86G12r6" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20201231_zAD8vqYveWMj" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--AccountsReceivableGross_i02I_pp0p0_maAANRNzCGO_zP6m6jwLhh8i" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Accounts receivable</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">7,403,308</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">6,161,249</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_i02NI_pp0p0_di_msAANRNzCGO_z6AUihP7p02e" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Allowances for doubtful accounts</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(273,979</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(271,436</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--AccountsAndNotesReceivableNet_i02TI_pp0p0_mtAANRNzCGO_zlrdv5AfO9Gi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total accounts receivable</span></td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">7,129,329</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,889,813</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock">
<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>Tabular disclosure of allowance for credit loss on accounts receivable.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<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;">us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ReceivablesAbstract">
<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 );">- References</a><div><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;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R31.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196679496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INVENTORIES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">SCHEDULE OF INVENTORIES</a></td>
<td class="text"><p id="xdx_892_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zE1zvLRMz1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BF_zn3wFWQpBjS1">SCHEDULE OF INVENTORIES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_495_20211231_z1QygdhdEd0a" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20201231_zKTPU8G0ztF7" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_z7kwJE3yLnN5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Completed goods</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">3,417,829</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">3,393,794</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--InventoryWorkInProcess_iI_pp0p0_maINzDiN_z5fX5WuBiQaa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Work in progress</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl0789">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">152,595</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_zjw3Jqeplpka" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Raw materials and supplies</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">6,084,176</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">4,826,087</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pp0p0_mtINzDiN_zCQYjA5oYjM2" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;<span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total inventory</span>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">9,502,005</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,372,476</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<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>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<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;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>42
<FILENAME>R32.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196704536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY, EQUIPMENT AND LEASEHOLDS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS</a></td>
<td class="text"><p id="xdx_891_eus-gaap--PropertyPlantAndEquipmentTextBlock_zQf95OB29Tm1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_zsxJFHuZlLil">&#160;SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2021</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2021</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Cost</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Net</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: left">Buildings and improvements</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6IagJkkWm9g" style="width: 14%; text-align: right" title="Cost">4,823,708</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6OjoO26Hlh4" style="width: 14%; text-align: right" title="Accumulated Depreciation">2,983,589</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z3mjqj8tjmug" style="width: 14%; text-align: right" title="Property, Plant and Equipment, Net, Total">1,840,119</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zQVdUD9JALMk" style="text-align: right" title="Cost">196,255</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zBd3jdxS1nYj" style="text-align: right" title="Accumulated Depreciation">71,258</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zRckIAqSFJCf" style="text-align: right" title="Property, Plant and Equipment, Net, Total">124,997</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Computer hardware</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zmgYMeTPqEqf" style="text-align: right" title="Cost">43,605</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zPEhHTvJpyj1" style="text-align: right" title="Accumulated Depreciation">42,456</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zK9HmOwOT2g" style="text-align: right" title="Property, Plant and Equipment, Net, Total">1,149</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Furniture and fixtures</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zvSHEQeZAS59" style="text-align: right" title="Cost">130,658</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zx2EFt0qBr4e" style="text-align: right" title="Accumulated Depreciation">106,101</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_z0rez7RsNyOc" style="text-align: right" title="Property, Plant and Equipment, Net, Total">24,557</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zVZhlKwdbxc" style="text-align: right" title="Cost">1,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zK3HxneSE3pd" style="text-align: right" title="Accumulated Depreciation">1,155</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ztskZy3WZ2Nc" style="text-align: right" title="Property, Plant and Equipment, Net, Total">717</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zYi4XmmSWXd6" style="text-align: right" title="Cost">6,867,799</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z9MVXMcxdK84" style="text-align: right" title="Accumulated Depreciation">4,171,699</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5dSPJOg1B07" style="text-align: right" title="Property, Plant and Equipment, Net, Total">2,696,100</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Trailer</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z5xSMZcBgqfc" style="text-align: right" title="Cost">9,463</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_znuuJ3b0wh2i" style="text-align: right" title="Accumulated Depreciation">7,532</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zEvR7mwu2hGa" style="text-align: right" title="Property, Plant and Equipment, Net, Total">1,931</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z9O2MlnIF4Pg" style="text-align: right" title="Cost">34,400</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zD6wxgIt3Gqf" style="text-align: right" title="Accumulated Depreciation">26,284</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z4qRlMy50HQd" style="text-align: right" title="Property, Plant and Equipment, Net, Total">8,116</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zU4rxGL1Z372" style="text-align: right" title="Cost">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl8VjxDx7Lj3" style="text-align: right" title="Accumulated Depreciation">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zvkHbBzEjCT2" style="text-align: right" title="Property, Plant and Equipment, Net, Total"><span style="-sec-ix-hidden: xdx2ixbrl0854">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zONCi4vNHbl7" style="text-align: right" title="Cost">107,759</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zLO38p5X7nUi" style="text-align: right" title="Accumulated Depreciation">107,759</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zDaZB9A7whz4" style="text-align: right" title="Property, Plant and Equipment, Net, Total"><span style="-sec-ix-hidden: xdx2ixbrl0860">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Land</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zzWsQk3HAr82" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">234,027</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zAUOpsFmZx5f" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"><span style="-sec-ix-hidden: xdx2ixbrl0864">&#8212;</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zxcnFD2XuiCk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total">234,027</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">12,538,418</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation">7,606,705</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentNet_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total">4,931,713</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2020</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">2020</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Cost</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Depreciation</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Net</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: left">Buildings and improvements</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z2xggdUxPDeh" style="width: 14%; text-align: right" title="Cost">4,798,370</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zo8xUD4jTwJe" style="width: 14%; text-align: right" title="Accumulated Depreciation">2,836,142</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zNtgRDDxMezh" style="width: 14%; text-align: right" title="Property, Plant and Equipment, Net, Total">1,962,228</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zdiNLCfbyWbb" style="text-align: right" title="Cost">180,956</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zUpjUOkzKdC4" style="text-align: right" title="Accumulated Depreciation">61,266</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zvQGB6Ir6aG4" style="text-align: right" title="Property, Plant and Equipment, Net, Total">119,690</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Computer hardware</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zdZLtO6di8Kj" style="text-align: right" title="Cost">43,593</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zUnPMa1ngME5" style="text-align: right" title="Accumulated Depreciation">41,957</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zy2OmZiRKvLk" style="text-align: right" title="Property, Plant and Equipment, Net, Total">1,636</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Furniture and fixtures</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zwj9r7Oc7Wdj" style="text-align: right" title="Cost">111,145</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zmHqBqEifps2" style="text-align: right" title="Accumulated Depreciation">101,186</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zX4z5NxNUWr8" style="text-align: right" title="Property, Plant and Equipment, Net, Total">9,959</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zGplvNwQi9D5" style="text-align: right" title="Cost">1,864</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zNL0aOoPiWd8" style="text-align: right" title="Accumulated Depreciation">971</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zIjBL02ru4n6" style="text-align: right" title="Property, Plant and Equipment, Net, Total">893</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5vUCDmx9rr3" style="text-align: right" title="Cost">6,154,425</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_za1nGbSr0ark" style="text-align: right" title="Accumulated Depreciation">3,573,748</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zv48BQLN7kjc" style="text-align: right" title="Property, Plant and Equipment, Net, Total">2,580,677</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Trailer</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zJQj9SaHqVMi" style="text-align: right" title="Cost">9,422</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z33mqDH9afzl" style="text-align: right" title="Accumulated Depreciation">6,675</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zaJ9uGg4oSIg" style="text-align: right" title="Property, Plant and Equipment, Net, Total">2,747</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zyGRlJFh5Z4b" style="text-align: right" title="Cost">34,400</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z1qymRSduX0f" style="text-align: right" title="Accumulated Depreciation">24,255</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zWMVB0Js2Jl" style="text-align: right" title="Property, Plant and Equipment, Net, Total">10,145</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl30RkG2bga7" style="text-align: right" title="Cost">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_ziGsCPADoXdj" style="text-align: right" title="Accumulated Depreciation">87,205</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zuGAiOKNUbTg" style="text-align: right" title="Property, Plant and Equipment, Net, Total">1,667</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zYuTbx1QTWJh" style="text-align: right" title="Cost">107,295</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zshI1XyfkMj6" style="text-align: right" title="Accumulated Depreciation">107,295</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zT6a0EGpDXw7" style="text-align: right" title="Property, Plant and Equipment, Net, Total"><span style="-sec-ix-hidden: xdx2ixbrl0932">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Land</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_ze1fLkmOpADe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">452,399</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zZ3jJkVGG89l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"><span style="-sec-ix-hidden: xdx2ixbrl0936">&#8212;</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_z11ex2owSN05" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total">452,399</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231_z87QSSWhFWn" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">11,982,741</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231_z2K9lJlKZjN4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation">6,840,700</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231_zoy0Ntvw4Uc2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total">5,142,041</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<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 );">- References</a><div><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;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_PropertyPlantAndEquipmentTextBlock">
<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>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<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;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>43
<FILENAME>R33.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196752152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PATENTS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">SCHEDULE OF PATENTS</a></td>
<td class="text"><p id="xdx_896_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zou6aUfzVBoe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BB_zDX8DZWv8Rt1" style="display: none">SCHEDULE OF PATENTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2021</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Accumulated <br/> Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2021</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; padding-bottom: 1.5pt">Patents</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zgxPltbff797" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, Cost">208,079</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_z0UJKjUecFJc" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated Amortization">194,380</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zxzh9NVo05Pd" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net">13,699</td><td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2020</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Accumulated <br/> Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2020</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net</span></p></td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; padding-bottom: 1.5pt">Patents</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_98F_eus-gaap--FiniteLivedPatentsGross_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, Cost">208,211</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20201231_zZTlu66uBsV1" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated Amortization">178,074</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left">$</td><td id="xdx_988_eus-gaap--FiniteLivedIntangibleAssetsNet_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net">30,137</td><td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE</a></td>
<td class="text"><p id="xdx_89F_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zg7OVd19fWO1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Estimated
amortization expense over the next five years is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zY0f2ngYyaB4" style="display: none">SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231_zd2gvfDF81Fc" title="2022">13,699</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<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>Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<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;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<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>Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>44
<FILENAME>R34.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196736904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>GOODWILL AND INTANGIBLE ASSETS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock', window );">SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS</a></td>
<td class="text"><p id="xdx_898_eus-gaap--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zjXsHyEPpKwl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zE6ikT39usR4" style="display: none">SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Goodwill</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 82%; padding-bottom: 1.5pt">Balance as of December 31, 2020 and 2021</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><span><span id="xdx_905_eus-gaap--Goodwill_iI_c20201231_zqDInxhtDvTk" title="Goodwill"><span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zpczmAJ7ULed">2,534,275</span></span></span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Indefinite Lived Intangible Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance as of December 31, 2020 and 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span><span id="xdx_90C_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_zRUJmRw2pR4b" title="Indefinite Lived Intangible Asset"><span id="xdx_909_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20201231_z4Gysg2HBfDj">770,000</span></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
relates to the acquisition of ENP Investments. Indefinite lived intangible assets consist of trade secrets and trademarks related to
the acquisition of ENP Investments.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Definite Life Intangible Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 82%">Balance as of December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zqnzOKzCdel" style="width: 14%; text-align: right" title="Beginning balance">2,182,000</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zL89yHsrhSD3" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization">(176,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance as of December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zT63YCXPM2F6" style="text-align: right" title="Beginning balance">2,006,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Amortization</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zm7BrKwivm23" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization">(176,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Balances as of December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsNet_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_z7DeKkhzIHPe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Ending balance">1,830,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock', window );">SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE</a></td>
<td class="text"><p id="xdx_897_ecustom--ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock_zt5FJmuBpXC" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Estimated
amortization expense over the next five years is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zR9Q8YPXhWmh" style="display: none">SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_900_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zuDLg7ZNAJYk" title="2022">160,000</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zYJoY8bbWood" style="text-align: right" title="2023">160,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zH6nAo29pVZe" style="text-align: right" title="2024">160,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zAVlxw356sJ8" style="text-align: right" title="2025">160,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify; padding-bottom: 1.5pt">2026</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zkJorWHpqWP1" style="border-bottom: Black 1.5pt solid; text-align: right" title="2026">160,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock">
<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>Schedule Of Estimated Future Amortization Expense [Table Text Block]</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;">FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock">
<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>Tabular disclosure of goodwill and intangible assets, which may be broken down by segment or major class.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<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;">us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>45
<FILENAME>R35.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440199303960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LONG TERM DEPOSITS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_FSI_DisclosureLongTermDepositsAbstract', window );"><strong>Long Term Deposits</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ScheduleOfLongTermDepositsTableTextBlock', window );">SCHEDULE OF LONG TERM DEPOSITS</a></td>
<td class="text"><p id="xdx_892_ecustom--ScheduleOfLongTermDepositsTableTextBlock_z2LfUcfvuOs7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has security deposits that are long term in nature which consist of damage deposits held by landlords and security deposits held
by various vendors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zSLcqLr61Cb3" style="display: none">SCHEDULE OF LONG TERM DEPOSITS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20211231_z5wQyUodyJKj" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_493_20201231_zXANx59fZjyh" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Long term deposits</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,540</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,540</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DisclosureLongTermDepositsAbstract">
<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 );">- References</a><div><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;">FSI_DisclosureLongTermDepositsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</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_FSI_ScheduleOfLongTermDepositsTableTextBlock">
<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>Schedule Of Long Term Deposits [Table Text Block]</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;">FSI_ScheduleOfLongTermDepositsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>46
<FILENAME>R36.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190153080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INVESTMENTS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember', window );">Enp Peru Investments Llc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsTextBlock', window );">SCHEDULE OF EQUITY METHOD INVESTMENT</a></td>
<td class="text"><p id="xdx_893_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zZYejtMnCpQ1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B2_zdTJRDriP3R9" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_906_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zyh4tunHg0y" title="Balance, Beginning">11,387</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Return of equity</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zg6SlDLvHNEg" style="text-align: right" title="Return of equity">(9,063</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain in equity method investment</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain (loss) in equity method investment">1,498</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zWbbRXiJmLMk" style="text-align: right" title="Balance, Beginning">3,822</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Return of equity</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuKru1CWLF22" style="text-align: right" title="Return of equity">(3,822</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain in equity method investment</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zifu3hVCdww" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain (loss) in equity method investment">22,642</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_985_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zb9s0kzoim3" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending">22,642</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnInvestmentsTextBlock', window );">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</a></td>
<td class="text"><p id="xdx_890_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zEJTiTqkdV5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Summarized
profit and loss information for ENP Peru is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B2_z1eFrklZK1b3" style="display: none">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_988_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z4EWTd49a26g" style="width: 14%; text-align: right" title="Net sales">322,079</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="width: 14%; text-align: right" title="Net sales">295,800</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuCNYZhxETki" style="text-align: right" title="Net income">45,285</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="text-align: right" title="Net income">2,996</td><td style="text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpRealtyLLCMember', window );">Enp Realty LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsTextBlock', window );">SCHEDULE OF EQUITY METHOD INVESTMENT</a></td>
<td class="text"><p id="xdx_89D_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_zemTOk4wjwI2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A
summary of the Company&#8217;s investment follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span><span id="xdx_8B1_zxdrOPvF7Pwc" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_90C_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zoeW8coVmUL1" title="Balance, Beginning">63,165</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Investment eliminated upon consolidation</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zOhwWHdTR0r5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Investment eliminated upon consolidation">(63,165</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance, December 31, 2020 and 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span id="xdx_90E_eus-gaap--EquityMethodInvestments_iE_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zZYLYHPEyJ2" title="Balance, Ending"><span id="xdx_90D_eus-gaap--EquityMethodInvestments_iE_c20210101__20211231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_ztyP2cPxE9x2" title="Balance, Ending"><span style="-sec-ix-hidden: xdx2ixbrl1102"><span style="-sec-ix-hidden: xdx2ixbrl1104">-</span></span></span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock', window );">SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION</a></td>
<td class="text"><p id="xdx_89F_ecustom--ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_z0wMTUSS81xj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span><span><span id="xdx_8B0_zUVZRvearMva" style="display: none">SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION</span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: left; padding-bottom: 1.5pt">Investment eliminated upon consolidation</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><span id="xdx_907_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20210101__20211231_zbg0Kp2l6Mf9" title="Investment eliminated upon consolidation">63,165</span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Assets acquired:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Cash</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pp0p0_c20211231_zhOVv8AutEWc" style="text-align: right" title="Assets acquired: Cash">13,419</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Building</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iI_pp0p0_c20211231_zznfX3IvKHag" style="text-align: right" title="Assets acquired:Building">630,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Land</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iI_pp0p0_c20211231_zlTTI6reeuO4" style="text-align: right" title="Assets acquired: Land">85,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Liabilities assumed:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Accounts payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pp0p0_di_c20211231_zCrjSk8UrOZf" style="text-align: right" title="Liabilities assumed: Accounts payable">(15,797</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Long term debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt_iNI_pp0p0_di_c20211231_z2LD5YNSJJVe" style="text-align: right" title="Liabilities assumed: Long term debt">(450,000</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Deferred income tax liability</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_pp0p0_di_c20211231_zsBoS6DdJ1dj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Liabilities assumed: Deferred income tax liability">(66,116</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Total identifiable net assets:</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_pp0p0_c20211231_zzKg3bxfGErb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total identifiable net assets:">196,506</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain on acquisition of ENP Realty</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_ecustom--GainOnAcquisitionOfEnpRealty_pp0p0_c20210101__20211231_zHDSnMRDPZSc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain on acquisition of ENP Realty">133,341</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_FloridaBasedLLCMember', window );">Florida Based LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsTextBlock', window );">SCHEDULE OF EQUITY METHOD INVESTMENT</a></td>
<td class="text"><p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zjQX0cNnXGD" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zXj8rYv2FEnj" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_903_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zTuO79otRgA8" title="Balance, Beginning">1,141,033</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Additional payments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--AdditionalPayment_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Additional payment">2,518,684</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Gain in equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqvP8dT6B6C9" style="text-align: right" title="Gain in equity method investment">809,342</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Return of equity</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_ecustom--EquityMethodInvestmentReturnOfEquity_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity">(896,714</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zoihULlgbo8g" style="text-align: right" title="Balance, Beginning">3,572,345</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gain in equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1FaUcXX8EQ5" style="text-align: right" title="Gain in equity method investment">454,023</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Return of equity</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zAj22AtBd1x1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity">(325,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zolSGiKsRZfj" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending">3,701,368</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnInvestmentsTextBlock', window );">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</a></td>
<td class="text"><p id="xdx_89C_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8cnNEy23dV4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zgvVrMUUqwzl" style="display: none">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zU0XZFKBlZ98" style="width: 14%; text-align: right" title="Net sales">11,543,277</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="width: 14%; text-align: right" title="Net sales">12,138,511</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--RealizedInvestmentGainsLosses_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z3C5zeqFyTA6" style="text-align: right" title="Gross profit">3,517,387</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--RealizedInvestmentGainsLosses_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Gross profit">4,688,654</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1VYMQW7W6S3" style="text-align: right" title="Net income">908,045</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_985_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Net income">1,618,685</td><td style="text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_LygosIncMember', window );">Lygos Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsTextBlock', window );">SCHEDULE OF EQUITY METHOD INVESTMENT</a></td>
<td class="text"><p id="xdx_89B_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--LygosIncMember_zPBmG5oMNeUb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B9_zGaeSay6wX36" style="display: none">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2019</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span id="xdx_90D_eus-gaap--EquityMethodInvestments_iS_pdp0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zVTNpSLrGV3g" title="Balance, Beginning"><span style="-sec-ix-hidden: xdx2ixbrl1170">-</span></span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 82%; padding-bottom: 1.5pt">Acquisition</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--AcquisitionCosts_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zhuXJr3UhhUc" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Acquisition">500,000</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--EquityMethodInvestments_iS_pdp0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zUYgjZ9sOb78" style="text-align: right" title="Balance, Beginning">500,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Additional payment</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_ecustom--AdditionalPayment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zICLbseBTTfi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Additional payment">500,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98E_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zXIa7z3v9El5" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending">1,000,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>


<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock">
<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>Schedule Of Recognized Identified Assets Acquired And Liabilities Assumed [Table Text Block]</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;">FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_EquityMethodInvestmentsTextBlock">
<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>Tabular disclosure of equity method investments including, but not limited to, name of each investee or group of investments, percentage ownership, difference between recorded amount of an investment and the value of the underlying equity in the net assets, and summarized financial information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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;">us-gaap_EquityMethodInvestmentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_GainLossOnInvestmentsTextBlock">
<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>Tabular disclosure of realized and unrealized gain (loss) on investment in security.</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;">us-gaap_GainLossOnInvestmentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_EnpRealtyLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpRealtyLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_FloridaBasedLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_FloridaBasedLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_LygosIncMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_LygosIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R37.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190152424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LONG TERM DEBT (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ScheduleOfLoanCovenantsTableTextBlock', window );">SCHEDULE OF LOAN COVENANTS</a></td>
<td class="text"><p id="xdx_890_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zDlxcW0x5J0l" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2021, Company was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BC_zddv8THbImJ1" style="display: none">SCHEDULE OF LOAN COVENANTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold">Continuity</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20210101__20211231_zBpDd1JsvKH9" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20200101__20201231_zouEcQcAiCMk" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LongTermDebt_iS_pp0p0_zF56tzaCsNRl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Balance, January 1</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">3,847,638</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">4,380,393</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ProceedsFromLoans_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Plus: Proceeds from loans</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1349">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,413,160</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_ecustom--ProceedsFromLoanAcquiredWithAcquisition_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Plus: Loan acquired with acquisition of ENP Realty</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1352">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">450,000</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--RepaymentsOfBankDebt_iN_pp0p0_di_z7Wfa0KQE4N9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Less: Forgiveness on PPP loans</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(537,960</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1356">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_pp0p0_di_zj07dnKMhLb5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Less: Payments on loan</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(943,080</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(4,395,915</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_408_eus-gaap--LongTermDebt_iE_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance, December 31</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,366,598</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">3,847,638</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtInstrumentsTextBlock', window );">SCHEDULE OF OUTSTANDING BALANCE LOAN</a></td>
<td class="text"><p id="xdx_89E_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zlD96N4W2vQ" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zzm7v86wfPT5" style="display: none">SCHEDULE OF OUTSTANDING BALANCE LOAN</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold">Outstanding balance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">a) Long term debt &#8211; Harris Bank</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_zxIjmuX8HNvc" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1366">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_pdp0" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1368">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">b) Long term debt &#8211; Harris Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_zkcKMXdRNT97" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1370">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_pdp0" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1372">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">c) Long term debt &#8211; Midland States Bank</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z0Szl05z63ye" style="width: 16%; text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1374">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_pp0p0" style="width: 16%; text-align: right" title="Long-term Debt">125,543</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">d) Long term debt &#8211; Ford Credit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_zvnkahcpB0vh" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1378">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_pdp0" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1380">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">e) Long term debt &#8211; PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zJJe1FRLlSd7" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1382">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_pp0p0" style="text-align: right" title="Long-term Debt">322,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">f) Long term debt - PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zCMV8dAvLlCk" style="text-align: right" title="Long-term Debt"><span style="-sec-ix-hidden: xdx2ixbrl1386">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_pp0p0" style="text-align: right" title="Long-term Debt">215,960</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">g) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zYZjQdY2Yu7i" style="text-align: right" title="Long-term Debt">1,554,044</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_pp0p0" style="text-align: right" title="Long-term Debt">1,920,976</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">h) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zIGWyQzrWaRh" style="text-align: right" title="Long-term Debt">381,674</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_pp0p0" style="text-align: right" title="Long-term Debt">822,380</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">i) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_z2wGuHePLfYb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term Debt">430,880</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term Debt">440,779</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Long-term Debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--LongTermDebt_iI_pp0p0_c20211231_zHD4j1ib0Zt7" style="text-align: right" title="Long-term Debt">2,366,598</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--LongTermDebt_c20201231_pp0p0" style="text-align: right" title="Long-term Debt">3,847,638</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Less: current portion</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20211231_zWMsVH9ij1wd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: current portion">(793,574</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20201231_zhXXib1qq172" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: current portion">(848,794</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--LongTermDebtNoncurrent_iI_pp0p0_c20211231_zD2kzuaN6BS5" style="border-bottom: Black 2.5pt double; text-align: right" title="Long term balance">1,573,024</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_984_eus-gaap--LongTermDebtNoncurrent_c20201231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Long term balance">2,998,844</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteOneWithMidlandBankMember', window );">Promissory Note One With Midland Bank [Member]</a></td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">SCHEDULE OF INTEREST LOAN REPAYMENT</a></td>
<td class="text"><p id="xdx_898_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zJvDhmOhYQw3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has committed to the following repayments:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_zkO0Q3J6R7gj" style="display: none">SCHEDULE OF INTEREST LOAN REPAYMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_907_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z2RLELj9IdWi" title="2022">382,705</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zUqHV2lOMiK6" style="text-align: right" title="2023">397,414</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98A_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zzomB3Owo9lg" style="text-align: right" title="2024">413,516</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">2025</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_983_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z7uwFqbraXJh" style="border-bottom: Black 1.5pt solid; text-align: right" title="2025">360,409</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteWithMidlandBankMember', window );">Promissory Note With Midland Bank [Member]</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">SCHEDULE OF INTEREST LOAN REPAYMENT</a></td>
<td class="text"><p id="xdx_89D_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zYX9114MX1Jk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has committed to the following repayments:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_z2z9lTHKdU56" style="display: none">SCHEDULE OF INTEREST LOAN REPAYMENT</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; text-align: justify">2022</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_909_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zPcjih80ZYFl" title="2022">29,749</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2023</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zBGEVE3alHe5" style="text-align: right" title="2023">29,749</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98B_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zQGQAp5ZWBI3" style="text-align: right" title="2025">29,749</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">2025</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_989_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zdnMGS0ccLj7" style="border-bottom: Black 1.5pt solid; text-align: right" title="2025">29,749</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ScheduleOfLoanCovenantsTableTextBlock">
<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>Schedule Of Loan Covenants [Table Text Block]</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;">FSI_ScheduleOfLoanCovenantsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ScheduleOfDebtInstrumentsTextBlock">
<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>Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28541-108399<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21506-112644<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69E<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495743-112612<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21521-112644<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21538-112644<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123599511&amp;loc=d3e64711-112823<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21475-112644<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;">us-gaap_ScheduleOfDebtInstrumentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock">
<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>Tabular disclosure of maturity and sinking fund requirement for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<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;">us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ShortTermDebtLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_ShortTermDebtLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteOneWithMidlandBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteOneWithMidlandBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteWithMidlandBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteWithMidlandBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R38.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196885528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAXES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT)</a></td>
<td class="text"><p id="xdx_89C_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zhXy14BwRlH8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
provision for income tax expense (benefit) is comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zIKV0MBR38fg" style="display: none">SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT)</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231_zznX9k44fEDl" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20200101__20201231_zYbdMcJRW6mb" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zpU4nxvSzL3g" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Current tax, federal</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">1,309,503</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">739,113</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_maCITEBzvlG_ztBreY74xPtj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Current tax, state</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">592,394</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">334,361</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--CurrentForeignTaxExpenseBenefit_maCITEBzvlG_zbv9lmqqUbH8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Current tax, foreign</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">91,285</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">124,414</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iT_pp0p0_mtCITEBzvlG_maITEBz6BY_zAmv1UYdyF24" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Current tax, total</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,993,182</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,197,888</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_maDITEBzP63_zSyaSAm05Fk1" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Deferred income tax, federal</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">250,153</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">158,308</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_maDITEBzP63_zUlJl5zuNB2k" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred income tax, state</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">113,164</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">71,616</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredForeignIncomeTaxExpenseBenefit_maDITEBzP63_zY27j8MzXNzf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Deferred income tax, foreign</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1454">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">179,629</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz6BY_zGUWIX66RRfi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Deferred income tax, total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">363,317</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">409,553</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz6BY_z9mp6rKc9gQ3" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,356,499</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,607,441</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>


<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">SCHEDULE OF RECONCILIATION OF INCOME TAXES</a></td>
<td class="text"><p id="xdx_897_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zb9vNqNKt8S" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table reconciles the income tax expense at the U.S. Federal statutory rate to income tax expense at the Company&#8217;s effective
tax rates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B4_zu5scLi9Z85h" style="display: none">SCHEDULE OF RECONCILIATION OF INCOME TAXES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231_zXc8yV8zkw3c" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_490_20200101__20201231_zntZieUtCgW7" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Income before tax</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">6,650,756</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">5,190,975</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_zLRRcG5UOrd9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">US statutory tax rates</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">30.50</td><td style="padding-bottom: 1.5pt; text-align: left">%</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">30.50</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr id="xdx_40E_ecustom--ExpectedIncomeTaxRecovery_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Expected income tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,028,481</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,583,247</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--IncomeTaxReconciliationNondeductibleExpense_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Non-deductible items</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(29,508</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(60,470</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--IncomeTaxReconciliationOtherAdjustments_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Change in estimates and other</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(65,027</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">603,422</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--IncomeTaxReconciliationChangeInEnactedTaxRate_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Change in enacted tax rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">337,961</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left"><span style="-sec-ix-hidden: xdx2ixbrl1481">&#160;</span></td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--IncomeTaxReconciliationForeignIncomeTaxRateDifferential_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign tax rate difference</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(86,696</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(120,372</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Change in valuation allowance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">171,288</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(398,386</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--IncomeTaxExpenseBenefit_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Total income taxes</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2,356,499</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,607,441</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--CurrentIncomeTaxExpenseBenefit_z3VCIfDA4USh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Current income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,993,182</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,197,888</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_zZKzGRevZ5u5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Deferred tax expense (recovery)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">363,317</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">409,553</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_zm04aIqHB76k" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Total income tax expense</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2,356,499</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,607,441</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES)</a></td>
<td class="text"><p id="xdx_895_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_z9nqjPHOeW29" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zpx4QTlaOwV8" style="display: none">SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES)</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Canada</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-align: left; padding-left: 10pt">Non capital loss carryforwards</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z0OFHJOItPqc" style="width: 14%; text-align: right" title="Non capital loss carryforwards">1,443,371</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="width: 14%; text-align: right" title="Non capital loss carryforwards">1,638,357</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zGoz46ANdiY2" style="text-align: right" title="Intangible assets">19,849</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Intangible assets">18,863</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Property, equipment and leaseholds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zRvbxhXcIHka" style="text-align: right" title="Property, equipment and leaseholds">587,408</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Property, equipment and leaseholds">624,016</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Financial instruments</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zBBMSCqbfQH7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Financial instruments"><span style="-sec-ix-hidden: xdx2ixbrl1515">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Financial instruments">26,690</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_ecustom--DeferredTaxAssetsLiabilitiesGross_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z91gA393M848" style="text-align: right" title="Deferred tax asset (liability)">2,050,628</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--DeferredTaxAssetsLiabilitiesGross_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Deferred tax asset (liability)">2,307,926</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Valuation allowance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zZihIEpGnnei" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance">(2,050,628</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zgCKL5SSDBU6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance">(2,307,926</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Net deferred tax asset</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_ecustom--DeferredTaxAssetNet_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zlHzuZuMTp4j" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net Deferred tax asset"><span style="-sec-ix-hidden: xdx2ixbrl1527">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_981_ecustom--DeferredTaxAssetNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net Deferred tax asset"><span style="-sec-ix-hidden: xdx2ixbrl1529">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>US</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2021</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2020</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Net operating loss carryforwards</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z5DhnUchqwFi" style="text-align: right" title="Non capital loss carryforwards"><span style="-sec-ix-hidden: xdx2ixbrl1531">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="text-align: right" title="Non capital loss carryforwards"><span style="-sec-ix-hidden: xdx2ixbrl1533">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zxOsMADbQByl" style="text-align: right" title="Intangible assets"><span style="-sec-ix-hidden: xdx2ixbrl1535">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="text-align: right" title="Intangible assets"><span style="-sec-ix-hidden: xdx2ixbrl1537">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zLzZEBp3Fqkk" style="text-align: right" title="Investments">(241,880</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zcjysrhuJ5Ga" style="text-align: right" title="Investments">(167,635</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Property, equipment and leaseholds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zAaup1v6dBGe" style="text-align: right" title="Property, equipment and leaseholds">(68,282</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="text-align: right" title="Property, equipment and leaseholds">(66,116</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt"><span style="font-family: Times New Roman, Times, Serif">Property, equipment and leaseholds</span></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zT8Pe4EomrTh" style="text-align: right" title="Property, equipment and leaseholds">12,697</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zXHE08whnfzc" style="text-align: right" title="Property, equipment and leaseholds">201,393</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Financial instruments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0IPCgahGEJ9" style="text-align: right" title="Financial instruments"><span style="-sec-ix-hidden: xdx2ixbrl1551">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="text-align: right" title="Financial instruments">98,210</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Deferred tax asset not recognized</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_ecustom--DeferredTaxAssetNotRecognized_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8fmlH1x77U6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"><span style="-sec-ix-hidden: xdx2ixbrl1555">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_ecustom--DeferredTaxAssetNotRecognized_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"><span style="-sec-ix-hidden: xdx2ixbrl1557">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Net deferred tax asset (liability)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_989_ecustom--DeferredTaxAssetLiabilitiesNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zG0di8pQy32d" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)">(297,465</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_984_ecustom--DeferredTaxAssetLiabilitiesNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)">65,852</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock', window );">SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS</a></td>
<td class="text"><p id="xdx_89B_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zwhwvsgTC2l7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B2_zZ7CVnDqFLHi" style="display: none">SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1.5pt; text-align: center">`</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: right">Loss</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 66%; text-align: right">2029</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandTwentyNineTaxYearMember_zUIagJc2hIv6" style="width: 30%; text-align: right" title="Total">891,014</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right">2030</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zS68ahb6bGNg" style="text-align: right" title="Total">1,081,844</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: right">2031</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneTaxYearMember_zR9uFe9AJ6hl" style="text-align: right" title="Total">1,245,577</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right">2037</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenTaxYearMember_zHNRFAGUkS15" style="text-align: right" title="Total">2,238,533</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: right">2038</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyEightTaxYearMember_zKiQnMQuwq6h" style="text-align: right" title="Total">372,149</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right">2039</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineTaxYearMember_zVw76eInNyE1" style="text-align: right" title="Total">72,378</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: right">2040</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyTaxYearMember_zsRdBU1IpPA7" style="text-align: right" title="Total">166,494</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: right; padding-bottom: 1.5pt">2041</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyOneTaxYearMember_z483yRk4B1t1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">207,537</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z3nu3wpmTcug" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">6,275,526</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock">
<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>Schedule Of Non Operating Loss Carryforwards [Table Text Block]</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;">FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_IncomeTaxDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<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>Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<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>Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<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;">us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<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>Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<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;">us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>49
<FILENAME>R39.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196681768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME PER SHARE (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE</a></td>
<td class="text"><p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zC5Qv9C2ZJIk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company presents both basic and diluted income per share on the face of its consolidated statements of income. Basic and diluted income
per share are calculated as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B5_zRKNSDA8fBZ7" style="display: none">SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20210101__20211231_zTnaJD69jXL8" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20200101__20201231_zN7R8zCjus62" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--NetIncomeLoss_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Net income attributable to controlling interest</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">3,449,162</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">2,977,050</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Weighted average common shares outstanding:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zSgjzHebABCa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12,316,254</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12,240,641</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zK6trIznl7l1" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12,505,522</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12,302,552</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income per common share attributable to controlling interest:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--EarningsPerShareBasicAndDiluted_pid_zmwdHaij9uWk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Basic and diluted</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">0.28</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">0.24</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock', window );">SCHEDULE OF ANTI-DILUTIVE OPTIONS</a></td>
<td class="text"><p id="xdx_898_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_ztagcukRm9sa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zBMAIldF5Ele" style="display: none">SCHEDULE OF ANTI-DILUTIVE OPTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20210101__20211231_zYv5MGJZGD8a" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_494_20200101__20201231_zGLHq8pAQOuk" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Anti-dilutive options</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">21,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">507,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<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 );">- References</a><div><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;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock">
<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>Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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;">us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<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>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>50
<FILENAME>R40.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440197054440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>STOCK OPTIONS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">SCHEDULE OF STOCK OPTION ACTIVITIES</a></td>
<td class="text"><p id="xdx_899_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_znjS7O4MEt0d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the Company&#8217;s stock option activities for the years ended December 31, 2021 and 2020:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B8_zzIeDf6q4poh" style="display: none">SCHEDULE OF STOCK OPTION ACTIVITIES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Number of shares</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Exercise <br/> price per share</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Weighted <br/> average <br/> exercise price</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20200101__20201231_zS2Rbc4KtpCa" style="width: 14%; text-align: right" title="Number of shares, Beginning Balance">635,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zOq9sd0lBBh" title="Exercise price per share, Beginning Balance">0.75</span> &#8211; <span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zhfSMjkGhmFd" title="Exercise price per share, Beginning Balance">1.75</span></span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20200101__20201231_zIDPQSsbtJyc" style="width: 14%; text-align: right" title="Weighted average exercise price, Beginning Balance">1.35</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231_zIsvPjNeS8f1" style="text-align: right" title="Number of shares, Granted">172,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20200101__20201231_zt1Hg13sVnx9" style="text-align: right" title="Exercise price per share, Granted">2.44</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_z6VdbbYVPvMc" style="text-align: right" title="Weighted average exercise price, Granted">2.44</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cancelled or expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20200101__20201231_zzBWqgMuG00i" style="text-align: right" title="Number of shares, Cancelled or expired">(13,000</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zfVOUb3Odtr1" title="Exercise price per share, Cancelled or expired">2.44</span> &#8211; <span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_znXBmOoBuE1j" title="Exercise price per share, Cancelled or expired">3.46</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zWsLMnDjH1o3" style="text-align: right" title="Weighted average exercise price, Cancelled or expired">2.75</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20200101__20201231_zGfonJxbp7V7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised">(45,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zcWkZ7vtwilh" title="Exercise price per share, Exercised">0.75</span> &#8211; <span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zH2RFT5bz6Yd" title="Exercise price per share, Exercised">1.05</span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zU0HGU9pN4qd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised">0.88</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_z8WhswlEmPn2" style="text-align: right" title="Number of shares, Beginning Balance">749,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zTzvjifCOc73" title="Exercise price per share, Beginning Balance">0.75</span> &#8211; <span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zroR7IBAf8t5" title="Exercise price per share, Beginning Balance">4.13</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zsIC8HS7ywva" style="text-align: right" title="Weighted average exercise price, Beginning Balance">2.42</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_zCXLWRfEOJg1" style="text-align: right" title="Number of shares, Granted">170,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20210101__20211231_ztGhNRlwXHvb" style="text-align: right" title="Exercise price per share, Granted">3.61</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zprT2Hkh4erl" style="text-align: right" title="Weighted average exercise price, Granted">3.61</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cancelled or expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zDsbJuSjxuGl" style="text-align: right" title="Number of shares, Cancelled or expired">(34,799</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_z7o32cI3BWpa" title="Exercise price per share, Cancelled or expired">1.42</span> &#8211; <span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z9oLms0KgJce" title="Exercise price per share, Cancelled or expired">3.46</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zGa6kYbs1XHa" style="text-align: right" title="Weighted average exercise price, Cancelled or expired">2.30</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_zeXGPRJWWwXk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised">(94,701</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zl7vUN1Ys8Hf" title="Exercise price per share, Exercised">0.75</span> &#8211; <span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zwczgqY1iu5h" title="Exercise price per share, Exercised">3.46</span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zzEfYVu9ydZd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised">1.58</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20210101__20211231_znM7mTqiOJKk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Ending Balance">789,500</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zf5WJRS4gp32" title="Exercise price per share, Ending Balance">1.42</span> &#8211; <span id="xdx_904_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zXEFq17pHWHf" title="Exercise price per share, Ending Balance">4.13</span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20210101__20211231_zU6vMW1gdVk1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance">2.78</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Exercisable, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20210101__20211231_zuMK2aQovmDi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares Exercisable, Ending Balance">564,500</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zHBclOTtJGp1" title="Exercise price per share Exercisable, Ending Balance">1.42</span> &#8211; <span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zBtXOLQ4ATdd" title="Exercise price per share Exercisable, Ending Balance">4.13</span></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_iE_pid_c20210101__20211231_zFkcSP8GMUNg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price Exercisable, Ending Balance">2.63</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>


<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS</a></td>
<td class="text"><p id="xdx_894_eus-gaap--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_zuCejW6QIz39" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of each option grant is calculated using the following weighted average assumptions:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zDrAqEWJzNQc" style="display: none">SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 85%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Expected life &#8211; years</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right"><span id="xdx_90D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_z1aOnTmciazd" title="Expected life - years">3.0</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right"><span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20200101__20201231_zEFMk2orsHd" title="Expected life - years">3.0</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Interest rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_z39LuDBouI9j" style="text-align: right" title="Interest rate">1.23</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20200101__20201231_za5SBEjiZHHa" style="text-align: right" title="Interest rate">0.37</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Volatility</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_ztcvnyZGjLJd" style="text-align: right" title="Volatility">63.28</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20200101__20201231_zC7tSSSdxbJ8" style="text-align: right" title="Volatility">70.14</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Weighted average fair value of options granted</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zHaABFnsUw32" style="text-align: right" title="Weighted average fair value of options granted">1.23</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20200101__20201231_zn7kRvqkujjh" style="text-align: right" title="Weighted average fair value of options granted">1.12</td><td style="text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<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 );">- References</a><div><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;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<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>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<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>Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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>51
<FILENAME>R41.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196677000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>NON-CONTROLLING INTERESTS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_NoncontrollingInterestAbstract', window );"><strong>Noncontrolling Interest [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ScheduleOfDistributionsTableTextBlock', window );">SCHEDULE OF DISTRIBUTIONS</a></td>
<td class="text"><p id="xdx_89D_ecustom--ScheduleOfDistributionsTableTextBlock_zea70KsXuEaj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B6_z1sol5lcRGog" style="display: none">SCHEDULE OF DISTRIBUTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%">Balance, December 31, 2019</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span id="xdx_909_eus-gaap--MinorityInterest_iS_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zb5hPXiwTtN8" title="Distribution to noncontrolling interests, Beginning balance">2,550,149</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Distribution</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyvr3wsiDbD4" style="text-align: right" title="Distribution">(594,882</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Non-controlling interest share of income</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zv8cxceY2kad" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income">606,484</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Balance, December 31, 2020</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--MinorityInterest_iS_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyrkhqvgJlk5" style="text-align: right" title="Distribution to noncontrolling interests, Beginning balance">2,561,751</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Distribution</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zBWbrMElBeSg" style="text-align: right" title="Distribution">(804,003</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Non-controlling interest share of income</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zpZmgpFeH8bl" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income">845,095</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Balance, December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98D_eus-gaap--MinorityInterest_iE_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zbjMg473C1J5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Distribution to noncontrolling interests, Ending balance">2,602,843</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ScheduleOfDistributionsTableTextBlock">
<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>Schedule Of Distributions [Table Text Block]</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;">FSI_ScheduleOfDistributionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_NoncontrollingInterestAbstract">
<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 );">- References</a><div><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;">us-gaap_NoncontrollingInterestAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R42.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196808152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock', window );">SCHEDULE OF REPORTABLE SEGMENTS</a></td>
<td class="text"><p id="xdx_898_eus-gaap--ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_z9JpYl8VfcX4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year
ended December 31, 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BE_z0ESYCLHXiFc" style="display: none">SCHEDULE OF REPORTABLE SEGMENTS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">EWCP</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">BCPA</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Consolidated</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: justify">Sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zbTIyQNLISx" style="width: 14%; text-align: right" title="Sales">420,811</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z2k9VpxaP1T8" style="width: 14%; text-align: right" title="Sales">33,995,524</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zFj3U5O0DhG7" style="width: 14%; text-align: right" title="Sales">34,416,335</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zcx7l3qMsNa" style="text-align: right" title="Interest expense"><span style="-sec-ix-hidden: xdx2ixbrl1817">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zeVOc9LVx5Ne" style="text-align: right" title="Interest expense">199,930</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zOjOtdFsRDSi" style="text-align: right" title="Interest expense">199,930</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zc5IDI00Uh5e" style="text-align: right" title="Depreciation">40,247</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPBdp4HuUDv2" style="text-align: right" title="Depreciation">925,688</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJDPoEAHRAOf" style="text-align: right" title="Depreciation">965,935</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Current and deferred income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJS9lIy0kfW" style="text-align: right" title="Current and deferred income tax expense">24,384</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zzz2lOtxWwVi" style="text-align: right" title="Current and deferred income tax expense">2,361,298</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zfsxliJ06Qg9" style="text-align: right" title="Current and deferred income tax expense">2,385,682</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Segment profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zXZBpTniEIE3" style="text-align: right" title="Segment profit">(368,994</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zUuBichGMrLe" style="text-align: right" title="Segment profit">3,818,156</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_ztiqPWrcCDJh" style="text-align: right" title="Segment profit">3,449,162</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Segment assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zoHbfr1qBjdk" style="text-align: right" title="Segment assets">1,929,537</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z3NIQmNJ6Nyf" style="text-align: right" title="Segment assets">37,621,733</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_ecustom--Segmentassets_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z1gbw8JexfB3" style="text-align: right" title="Segment assets">39,551,270</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Expenditures for segment assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pdp0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zp8NMpih4Rxe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"><span style="-sec-ix-hidden: xdx2ixbrl1847">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zHDv4dYXQPZh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets">782,219</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPPrOnJMOaw4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets">782,219</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year
ended December 31, 2020:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">EWCP</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">BCPA</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Consolidated</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: justify">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 46%; text-align: justify">Sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales">334,423</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales">31,073,031</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales">31,407,454</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense">54</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense">260,603</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--InterestExpense_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense">260,657</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation">41,969</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation">809,703</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--DepreciationNonproduction_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation">851,672</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Current and deferred income tax expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense">121,164</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense">1,486,277</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense">1,607,441</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Segment profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit">(536,220</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit">3,513,270</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ProfitLoss_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit">2,977,050</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Segment assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets">2,111,501</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets">32,975,887</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--Segmentassets_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets">35,087,388</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Expenditures for segment assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"><span style="-sec-ix-hidden: xdx2ixbrl1889">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets">1,071,108</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets">1,071,108</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock', window );">SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA</a></td>
<td class="text"><p id="xdx_89F_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zGJ4aCueOhLa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Sales
by territory are shown below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BB_z5CCCs7BAQ47" style="display: none">SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--CA_zgjIwDWnm8O8" style="width: 14%; text-align: right" title="Sales">525,900</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" style="width: 14%; text-align: right" title="Sales">562,626</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">United States and abroad</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zJeRCfzX6ti" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales">33,890,435</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales">30,844,828</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231_zt1EE3Tz0lNb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales">34,416,335</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales">31,407,454</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock', window );">SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES</a></td>
<td class="text"><p id="xdx_89B_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zpIZcCRVBrV9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s long-lived assets (property, equipment, intangibles, goodwill, leaseholds, patents and right of use assets) are located
in Canada and the United States as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B9_zQh1ee9jBluj" style="display: none">SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2020</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--CA_zrJKWXVr4Fc" style="width: 14%; text-align: right" title="Long-lived assets">191,752</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" style="width: 14%; text-align: right" title="Long-lived assets">445,663</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">United States</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--US_z2dur2RGH2d6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets">10,105,202</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--US_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets">10,519,903</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231_zlD9rPf2jJ19" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets">10,296,954</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98D_eus-gaap--NoncurrentAssets_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets">10,965,566</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock">
<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>Tabular disclosure of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<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;">us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock">
<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>Tabular disclosure of the names of foreign countries in which material long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets are located, and amount of such long-lived assets located in that country or foreign geographic area.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<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;">us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock">
<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>Tabular disclosure of the names of foreign countries from which revenue is material and the amount of revenue from external customers attributed to those countries. An entity may also provide subtotals of geographic information about groups of countries.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<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;">us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</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_us-gaap_SegmentReportingAbstract">
<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 );">- References</a><div><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;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R43.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190088584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember', window );">Enp Peru Investments Llc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,110,560<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpInvestmentsLlcAndEnpMendotaMember', window );">Enp Investments Llc And Enp Mendota [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest', window );">Subsidiary company ownership interest rate</a></td>
<td class="nump">65.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember', window );">ENP Investments LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest', window );">Subsidiary company ownership interest rate</a></td>
<td class="nump">65.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpInvestmentsLLCMember', window );">Enp Investments LLC [Member] | Unrelated Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest', window );">Subsidiary company ownership interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpRealtyLLCMember', window );">Enp Realty LLC [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest', window );">Subsidiary company ownership interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpRealtyLLCMember', window );">Enp Realty LLC [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest', window );">Subsidiary company ownership interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferred1">
<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>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120321790&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6578-128477<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;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_PropertyPlantAndEquipmentLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest">
<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 number of units or percentage investment held in the subsidiary by the limited liability company or limited partnership.</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;">us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=FSI_EnpInvestmentsLlcAndEnpMendotaMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=FSI_EnpInvestmentsLlcAndEnpMendotaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=FSI_EnpInvestmentsLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=FSI_EnpInvestmentsLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_UnrelatedPartyMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_UnrelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=FSI_EnpRealtyLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=FSI_EnpRealtyLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R44.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440193663608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF METHOD OF DEPRECIATION (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember', window );">Computer Equipment [Member]</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">30%
    Declining balance<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and Fixtures [Member]</a></td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">20%
    Declining balance<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member]</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">20%
    Declining balance<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Office Equipment [Member]</a></td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">20%
    Declining balance<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BoatMember', window );">Boat [Member]</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">20%
    Declining balance<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BuildingAndImprovementsMember', window );">Building and improvements [Member]</a></td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">10%
    Declining balance<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_TrailerMember', window );">Trailer [Member]</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">30%
    Declining balance<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_AutomobilesMember', window );">Automobiles [Member]</a></td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">Straight-line
    over 5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_PatentsMember', window );">Patents [Member]</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">Straight-line
    over 17 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_TechnologyEquipmentMember', window );">Technology Equipment [Member]</a></td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">Straight-line
    over 10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member]</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">Straight-line
    over lease term<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_CustomerRelationshipsENPInvestmentsMember', window );">Customer Relationships - ENP Investments [Member]</a></td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">Straight-line
    over 15 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_SoftwareENPInvestmentsMember', window );">Software - ENP Investments [Member]</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DepreciationMethodUsedAndAnnualRate', window );">Depreciation method used and annual rate</a></td>
<td class="text">Straight-line
    over 3 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DepreciationMethodUsedAndAnnualRate">
<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>Depreciation method used and annual rate.</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;">FSI_DepreciationMethodUsedAndAnnualRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</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_us-gaap_PropertyPlantAndEquipmentLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BoatMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BoatMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BuildingAndImprovementsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BuildingAndImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_TrailerMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_TrailerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_AutomobilesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_AutomobilesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_PatentsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_PatentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_TechnologyEquipmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_TechnologyEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_CustomerRelationshipsENPInvestmentsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_CustomerRelationshipsENPInvestmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_SoftwareENPInvestmentsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_SoftwareENPInvestmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R45.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440194996472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from Contract with Customer, Excluding Assessed Tax</a></td>
<td class="nump">$ 34,416,335<span></span>
</td>
<td class="nump">$ 31,407,454<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of Goods and Services Sold</a></td>
<td class="nump">$ 23,019,824<span></span>
</td>
<td class="nump">21,641,035<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities', window );">Equity Method Investment, Description of Principal Activities</a></td>
<td class="text">Significant influence is generally deemed to exist if the Company&#8217;s
ownership interest in the voting stock of the investee ranges between 20% and 50%, although other factors, such as representation on
the investee&#8217;s board of directors, are considered in determining whether the equity method of accounting is appropriate.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=FSI_ThreePrimaryCustomersMember', window );">Three Primary Customers [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from Contract with Customer, Excluding Assessed Tax</a></td>
<td class="nump">$ 16,917,947<span></span>
</td>
<td class="nump">14,713,127<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts Receivable, after Allowance for Credit Loss</a></td>
<td class="nump">$ 4,940,995<span></span>
</td>
<td class="nump">$ 3,986,284<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=FSI_ThreePrimaryCustomersMember', window );">Three Primary Customers [Member] | Revenue from Contract with Customer Benchmark [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ConcentrationRiskThresholdPercentage', window );">[custom:ConcentrationRiskThresholdPercentage]</a></td>
<td class="nump">49.00%<span></span>
</td>
<td class="nump">47.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=FSI_ThreePrimaryCustomersMember', window );">Three Primary Customers [Member] | Accounts Receivable [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ConcentrationRiskThresholdPercentage', window );">[custom:ConcentrationRiskThresholdPercentage]</a></td>
<td class="nump">69.00%<span></span>
</td>
<td class="nump">68.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ShippingAndHandlingMember', window );">Shipping and Handling [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from Contract with Customer, Excluding Assessed Tax</a></td>
<td class="nump">$ 465,493<span></span>
</td>
<td class="nump">$ 427,920<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of Goods and Services Sold</a></td>
<td class="nump">$ 1,058,674<span></span>
</td>
<td class="nump">$ 1,051,588<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ConcentrationRiskThresholdPercentage">
<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>Concentration Risk Threshold Percentage.</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;">FSI_ConcentrationRiskThresholdPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_AccountsReceivableNet">
<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>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 310<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123366838&amp;loc=d3e3073-115593<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<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;">us-gaap_AccountsReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<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 aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities">
<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 description of the principal activities of an investee accounted for under the equity method.</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;">us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ProductInformationLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_ProductInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<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>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ConcentrationRiskByTypeAxis=FSI_ThreePrimaryCustomersMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=FSI_ThreePrimaryCustomersMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=us-gaap_ShippingAndHandlingMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_ShippingAndHandlingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R46.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196871336">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_FSI_DisclosureLeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right of Use Assets Ending Balance</a></td>
<td class="nump">$ 483,113<span></span>
</td>
<td class="nump">$ 789,205<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_OperatingLeaseAssetsAddition', window );">Addition</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">260,661<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_OperatingLeasesAssetsTermination', window );">Termination</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(234,980)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense', window );">Depreciation</a></td>
<td class="num">(265,846)<span></span>
</td>
<td class="num">(331,773)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right of Use Assets Ending Balance</a></td>
<td class="nump">217,267<span></span>
</td>
<td class="nump">483,113<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Lease Liability Ending Balance</a></td>
<td class="nump">483,113<span></span>
</td>
<td class="nump">789,205<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_OperatingLeasesLiabilityAddition', window );">Addition</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">260,661<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_OperatingLeasesLiabilityTermination', window );">Termination</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(234,980)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_LeaseInterestExpense', window );">Lease interest expense</a></td>
<td class="nump">22,057<span></span>
</td>
<td class="nump">53,768<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Payments</a></td>
<td class="num">(287,903)<span></span>
</td>
<td class="num">(385,541)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Lease Liability Ending Balance</a></td>
<td class="nump">217,267<span></span>
</td>
<td class="nump">483,113<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Short-term portion</a></td>
<td class="nump">77,715<span></span>
</td>
<td class="nump">287,900<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Long-term portion</a></td>
<td class="nump">139,552<span></span>
</td>
<td class="nump">195,213<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total</a></td>
<td class="nump">$ 217,267<span></span>
</td>
<td class="nump">$ 483,113<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DisclosureLeasesAbstract">
<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 );">- References</a><div><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;">FSI_DisclosureLeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</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_FSI_LeaseInterestExpense">
<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>Lease interest expense.</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;">FSI_LeaseInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_OperatingLeaseAssetsAddition">
<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>Operating lease assets addition.</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;">FSI_OperatingLeaseAssetsAddition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_OperatingLeasesAssetsTermination">
<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>Operating leases assets termination.</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;">FSI_OperatingLeasesAssetsTermination</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_OperatingLeasesLiabilityAddition">
<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>Operating leases liability addition.</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;">FSI_OperatingLeasesLiabilityAddition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_FSI_OperatingLeasesLiabilityTermination">
<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>Operating leases liability termination</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;">FSI_OperatingLeasesLiabilityTermination</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_OperatingLeaseLiability">
<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>Present value of lessee's discounted obligation for lease payments from operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<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>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<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>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasePayments">
<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>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<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;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_OperatingLeaseRightOfUseAsset">
<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>Amount of lessee's right to use underlying asset under operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense">
<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>Amount of amortization expense for right-of-use asset from operating lease.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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>57
<FILENAME>R47.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196981784">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_FSI_DisclosureLeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2022</a></td>
<td class="nump">$ 78,240<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2023</a></td>
<td class="nump">77,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2024</a></td>
<td class="nump">70,440<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2025</a></td>
<td class="nump">71,940<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total</a></td>
<td class="nump">297,720<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Impact of discounting</a></td>
<td class="num">(80,453)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Lease liability, December 31, 2021</a></td>
<td class="nump">$ 217,267<span></span>
</td>
<td class="nump">$ 483,113<span></span>
</td>
<td class="nump">$ 789,205<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DisclosureLeasesAbstract">
<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 );">- References</a><div><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;">FSI_DisclosureLeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</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_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">
<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>Amount of lessee's undiscounted obligation for lease payment for operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<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>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<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>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<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>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<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>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<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>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<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>Present value of lessee's discounted obligation for lease payments from operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R48.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196648152">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>LEASES (Details Narrative)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</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_FSI_DisclosureLeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseDiscountRate', window );">Operating leases discount rate</a></td>
<td class="nump">5.50%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DisclosureLeasesAbstract">
<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 );">- References</a><div><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;">FSI_DisclosureLeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</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_us-gaap_LesseeOperatingLeaseDiscountRate">
<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>Discount rate used by lessee to determine present value of operating lease payments.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918673-209980<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;">us-gaap_LesseeOperatingLeaseDiscountRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R49.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440197948152">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF ACCOUNTS RECEIVABLE (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_ReceivablesAbstract', window );"><strong>Receivables [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableGross', window );">Accounts receivable</a></td>
<td class="nump">$ 7,403,308<span></span>
</td>
<td class="nump">$ 6,161,249<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables', window );">Allowances for doubtful accounts</a></td>
<td class="num">(273,979)<span></span>
</td>
<td class="num">(271,436)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsAndNotesReceivableNet', window );">Total accounts receivable</a></td>
<td class="nump">$ 7,129,329<span></span>
</td>
<td class="nump">$ 5,889,813<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsAndNotesReceivableNet">
<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>Amount, after allowance for credit loss, of accounts and financing receivable. Includes, but is not limited to, notes and loan receivable.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_AccountsAndNotesReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableGross">
<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>Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<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;">us-gaap_AccountsReceivableGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables">
<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 valuation allowance as of the balance sheet date to reduce the gross amount of receivables to estimated net realizable value, which would be presented in parentheses on the face of the balance sheet.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<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;">us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesAbstract">
<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 );">- References</a><div><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;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R50.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440198618664">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF INVENTORIES (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoods', window );">Completed goods</a></td>
<td class="nump">$ 3,417,829<span></span>
</td>
<td class="nump">$ 3,393,794<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcess', window );">Work in progress</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">152,595<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsAndSupplies', window );">Raw materials and supplies</a></td>
<td class="nump">6,084,176<span></span>
</td>
<td class="nump">4,826,087<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">&#160;Total inventory&#160;</a></td>
<td class="nump">$ 9,502,005<span></span>
</td>
<td class="nump">$ 8,372,476<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_InventoryFinishedGoods">
<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>Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_InventoryFinishedGoods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<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>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsAndSupplies">
<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>Gross amount of unprocessed materials to be used in manufacturing or production process and supplies that will be consumed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a)(4),(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_InventoryRawMaterialsAndSupplies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcess">
<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>Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_InventoryWorkInProcess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R51.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189245704">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">$ 12,538,418<span></span>
</td>
<td class="nump">$ 11,982,741<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">7,606,705<span></span>
</td>
<td class="nump">6,840,700<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">4,931,713<span></span>
</td>
<td class="nump">5,142,041<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BuildingAndImprovementsMember', window );">Building and improvements [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">4,823,708<span></span>
</td>
<td class="nump">4,798,370<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">2,983,589<span></span>
</td>
<td class="nump">2,836,142<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">1,840,119<span></span>
</td>
<td class="nump">1,962,228<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_AutomobilesMember', window );">Automobiles [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">196,255<span></span>
</td>
<td class="nump">180,956<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">71,258<span></span>
</td>
<td class="nump">61,266<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">124,997<span></span>
</td>
<td class="nump">119,690<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember', window );">Computer Equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">43,605<span></span>
</td>
<td class="nump">43,593<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">42,456<span></span>
</td>
<td class="nump">41,957<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">1,149<span></span>
</td>
<td class="nump">1,636<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and Fixtures [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">130,658<span></span>
</td>
<td class="nump">111,145<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">106,101<span></span>
</td>
<td class="nump">101,186<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">24,557<span></span>
</td>
<td class="nump">9,959<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Office Equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">1,872<span></span>
</td>
<td class="nump">1,864<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">1,155<span></span>
</td>
<td class="nump">971<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">717<span></span>
</td>
<td class="nump">893<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">6,867,799<span></span>
</td>
<td class="nump">6,154,425<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">4,171,699<span></span>
</td>
<td class="nump">3,573,748<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">2,696,100<span></span>
</td>
<td class="nump">2,580,677<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_TrailerMember', window );">Trailer [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">9,463<span></span>
</td>
<td class="nump">9,422<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">7,532<span></span>
</td>
<td class="nump">6,675<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">1,931<span></span>
</td>
<td class="nump">2,747<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BoatMember', window );">Boat [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">34,400<span></span>
</td>
<td class="nump">34,400<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">26,284<span></span>
</td>
<td class="nump">24,255<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">8,116<span></span>
</td>
<td class="nump">10,145<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">88,872<span></span>
</td>
<td class="nump">88,872<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">88,872<span></span>
</td>
<td class="nump">87,205<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">1,667<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_DevelopedTechnologyRightsMember', window );">Developed Technology Rights [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">107,759<span></span>
</td>
<td class="nump">107,295<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">107,759<span></span>
</td>
<td class="nump">107,295<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember', window );">Land [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">234,027<span></span>
</td>
<td class="nump">452,399<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">$ 234,027<span></span>
</td>
<td class="nump">$ 452,399<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<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>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.14)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<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>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_PropertyPlantAndEquipmentNet">
<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>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BuildingAndImprovementsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BuildingAndImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_AutomobilesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_AutomobilesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_TrailerMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_TrailerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BoatMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BoatMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_DevelopedTechnologyRightsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_DevelopedTechnologyRightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R52.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189177784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY, EQUIPMENT AND LEASEHOLDS (Details Narrative)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>CAD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>CAD ($)</div>
</th>
<th class="th">
<div>Jan. 12, 2021 </div>
<div>ft&#178;</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">$ 773,497<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 659,233<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AreaOfLand', window );">Area of land | ft&#178;</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.3<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">12,538,418<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,982,741<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated depreciation</a></td>
<td class="nump">7,606,705<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,840,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Gain on disposal</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,490<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfMachineryAndEquipment', window );">Proceed for disposal</a></td>
<td class="nump">263,380<span></span>
</td>
<td class="nump">$ 333,899<span></span>
</td>
<td class="nump">24,789<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">219,318<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">79,517<span></span>
</td>
<td class="nump">$ 278,040<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_GainOnInvestments', window );">Recognized gains</a></td>
<td class="nump">$ 44,330<span></span>
</td>
<td class="nump">$ 55,859<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated depreciation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">64,218<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Gain on disposal</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,490<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_GainOnInvestments">
<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>Gain on investments</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;">FSI_GainOnInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<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>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.14)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AreaOfLand">
<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 of land held.</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;">us-gaap_AreaOfLand</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:areaItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<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 amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<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>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ProceedsFromSaleOfMachineryAndEquipment">
<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 cash inflow from sale of machinery and equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3179-108585<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;">us-gaap_ProceedsFromSaleOfMachineryAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_PropertyPlantAndEquipmentGross">
<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>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R53.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440192454456">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF PATENTS (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedPatentsGross', window );">Patents, Cost</a></td>
<td class="nump">$ 208,079<span></span>
</td>
<td class="nump">$ 208,211<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">194,380<span></span>
</td>
<td class="nump">178,074<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Patents, Net</a></td>
<td class="nump">$ 13,699<span></span>
</td>
<td class="nump">$ 30,137<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<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>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<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>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedPatentsGross">
<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>Gross carrying amount before accumulated amortization as of the balance sheet date of the costs pertaining to the exclusive legal rights granted to the owner of the patent to exploit an invention or a process for a period of time specified by law. Such costs may have been expended to directly apply and receive patent rights, or to acquire such rights.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedPatentsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<FILENAME>R54.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440275865704">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE (Details)<br></strong></div></th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2022</a></td>
<td class="nump">$ 13,699<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<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>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R55.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190132424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 2,534,275<span></span>
</td>
<td class="nump">$ 2,534,275<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Indefinite Lived Intangible Asset</a></td>
<td class="nump">770,000<span></span>
</td>
<td class="nump">770,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Beginning balance</a></td>
<td class="nump">30,137<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization</a></td>
<td class="nump">16,438<span></span>
</td>
<td class="nump">16,438<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Ending balance</a></td>
<td class="nump">13,699<span></span>
</td>
<td class="nump">30,137<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnPInvestmentsCorporationLLCMember', window );">EnP Investments Limited Liability Corporation (LLC) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Beginning balance</a></td>
<td class="nump">2,006,000<span></span>
</td>
<td class="nump">2,182,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization</a></td>
<td class="num">(176,000)<span></span>
</td>
<td class="num">(176,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Ending balance</a></td>
<td class="nump">$ 1,830,000<span></span>
</td>
<td class="nump">$ 2,006,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<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 aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<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;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_FiniteLivedIntangibleAssetsNet">
<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>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<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>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<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;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill">
<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>Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_EnPInvestmentsCorporationLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnPInvestmentsCorporationLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>R56.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190197384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PATENTS (Details Narrative)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>CAD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>CAD ($)</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization</a></td>
<td class="nump">$ 16,438<span></span>
</td>
<td class="nump">$ 16,438<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=FSI_CADMember', window );">CAD [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_IncreaseInCurrencyConversion', window );">Increase in currency conversion</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 265,102<span></span>
</td>
<td class="nump">$ 265,102<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_IncreaseInCurrencyConversion">
<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>Increase in currency conversion.</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;">FSI_IncreaseInCurrencyConversion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<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 aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<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;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_AwardTypeAxis=FSI_CADMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=FSI_CADMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R57.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440198190120">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)<br></strong></div></th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</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_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems', window );"><strong>Impairment Effects on Earnings Per Share [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2022</a></td>
<td class="nump">$ 13,699<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByAssetClassAxis=us-gaap_FiniteLivedIntangibleAssetsMember', window );">Finite-Lived Intangible Assets [Member]</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_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems', window );"><strong>Impairment Effects on Earnings Per Share [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2022</a></td>
<td class="nump">160,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2023</a></td>
<td class="nump">160,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2024</a></td>
<td class="nump">160,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2025</a></td>
<td class="nump">160,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2026</a></td>
<td class="nump">$ 160,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<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>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<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>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<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>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<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>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<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>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_FairValueByAssetClassAxis=us-gaap_FiniteLivedIntangibleAssetsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByAssetClassAxis=us-gaap_FiniteLivedIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R58.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190189064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>GOODWILL AND INTANGIBLE ASSETS (Details Narrative) - ENP Investments LLC [Member]<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember', window );">Customer Relationships [Member]</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_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated useful life</a></td>
<td class="text">15 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember', window );">Computer Software, Intangible Asset [Member]</a></td>
<td class="text">&#160;<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_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated useful life</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife">
<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>Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</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;">us-gaap_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_us-gaap_FiniteLivedIntangibleAssetsLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_ComputerSoftwareIntangibleAssetMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_ComputerSoftwareIntangibleAssetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>R59.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440197078184">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF LONG TERM DEPOSITS (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_FSI_DisclosureLongTermDepositsAbstract', window );"><strong>Long Term Deposits</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepositsAssetsNoncurrent', window );">Long term deposits</a></td>
<td class="nump">$ 8,540<span></span>
</td>
<td class="nump">$ 8,540<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DisclosureLongTermDepositsAbstract">
<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 );">- References</a><div><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;">FSI_DisclosureLongTermDepositsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</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_us-gaap_DepositsAssetsNoncurrent">
<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>Carrying value of amounts transferred to third parties for security purposes that are expected to be returned or applied towards payment after one year or beyond the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_DepositsAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R60.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189142760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF EQUITY METHOD INVESTMENT (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Beginning</a></td>
<td class="nump">$ 4,776,167<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Ending</a></td>
<td class="nump">5,424,010<span></span>
</td>
<td class="nump">$ 4,776,167<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_InvestmentEliminatedUponConsolidation', window );">Investment eliminated upon consolidation</a></td>
<td class="nump">63,165<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember', window );">Enp Peru Investments Llc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Beginning</a></td>
<td class="nump">3,822<span></span>
</td>
<td class="nump">11,387<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_EquityMethodInvestmentReturnOfEquity', window );">Return of equity</a></td>
<td class="num">(3,822)<span></span>
</td>
<td class="num">(9,063)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal', window );">Gain in equity method investment</a></td>
<td class="nump">22,642<span></span>
</td>
<td class="nump">1,498<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Ending</a></td>
<td class="nump">22,642<span></span>
</td>
<td class="nump">3,822<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpRealtyLLCMember', window );">Enp Realty LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Beginning</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">63,165<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Ending</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_InvestmentEliminatedUponConsolidation', window );">Investment eliminated upon consolidation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(63,165)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_FloridaBasedLLCMember', window );">Florida Based LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Beginning</a></td>
<td class="nump">3,572,345<span></span>
</td>
<td class="nump">1,141,033<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_EquityMethodInvestmentReturnOfEquity', window );">Return of equity</a></td>
<td class="num">(325,000)<span></span>
</td>
<td class="num">(896,714)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal', window );">Gain in equity method investment</a></td>
<td class="nump">454,023<span></span>
</td>
<td class="nump">809,342<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Ending</a></td>
<td class="nump">3,701,368<span></span>
</td>
<td class="nump">3,572,345<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_AdditionalPayment', window );">Additional payment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,518,684<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_LygosIncMember', window );">Lygos Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Beginning</a></td>
<td class="nump">500,000<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Ending</a></td>
<td class="nump">1,000,000<span></span>
</td>
<td class="nump">500,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_AdditionalPayment', window );">Additional payment</a></td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquisitionCosts', window );">Acquisition</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 500,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_AdditionalPayment">
<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>Additional payment.</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;">FSI_AdditionalPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_FSI_EquityMethodInvestmentReturnOfEquity">
<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>Return of equity.</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;">FSI_EquityMethodInvestmentReturnOfEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_InvestmentEliminatedUponConsolidation">
<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>Investment Eliminated Upon Consolidation.</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;">FSI_InvestmentEliminatedUponConsolidation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_AcquisitionCosts">
<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 capitalized costs incurred during the period (excluded from amortization) to purchase, lease or otherwise acquire an unproved property, including costs of lease bonuses and options to purchase or lease properties, the portion of costs applicable to minerals when land including mineral rights is purchased in fee, brokers' fees, recording fees, legal costs, and other costs incurred in acquiring properties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 932<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-10(c)(7)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=123726172&amp;loc=d3e511914-122862<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 932<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-10(c)(3)(ii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=123726172&amp;loc=d3e511914-122862<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;">us-gaap_AcquisitionCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal">
<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>Amount of gain (loss) on sale or disposal of an equity method investment.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(b)(7)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(b)(9)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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;">us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_EquityMethodInvestments">
<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>This item represents the carrying amount on the entity's balance sheet of its investment in common stock of an equity method investee. This is not an indicator of the fair value of the investment, rather it is the initial cost adjusted for the entity's share of earnings and losses of the investee, adjusted for any distributions (dividends) and other than temporary impairment (OTTI) losses recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8813-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_EquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_EnpRealtyLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpRealtyLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_FloridaBasedLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_FloridaBasedLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_LygosIncMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_LygosIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<FILENAME>R61.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189855512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember', window );">Enp Peru Investments Llc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnSalesOfInvestmentRealEstate', window );">Net sales</a></td>
<td class="nump">$ 322,079<span></span>
</td>
<td class="nump">$ 295,800<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_RealizedInvestmentGainsLossesNet', window );">Net income</a></td>
<td class="nump">45,285<span></span>
</td>
<td class="nump">2,996<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_FloridaBasedLLCMember', window );">Florida Based LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnSalesOfInvestmentRealEstate', window );">Net sales</a></td>
<td class="nump">11,543,277<span></span>
</td>
<td class="nump">12,138,511<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_RealizedInvestmentGainsLossesNet', window );">Net income</a></td>
<td class="nump">908,045<span></span>
</td>
<td class="nump">1,618,685<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RealizedInvestmentGainsLosses', window );">Gross profit</a></td>
<td class="nump">$ 3,517,387<span></span>
</td>
<td class="nump">$ 4,688,654<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_RealizedInvestmentGainsLossesNet">
<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>Net income.</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;">FSI_RealizedInvestmentGainsLossesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_GainsLossesOnSalesOfInvestmentRealEstate">
<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 net gain (loss) resulting from sales and other disposals of real estate owned for investment purposes.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(b)(9)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123605587&amp;loc=d3e23528-158515<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(b)(7)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(14)(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 360<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123605564&amp;loc=d3e23439-158514<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(3)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 360<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123605564&amp;loc=d3e23415-158514<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;">us-gaap_GainsLossesOnSalesOfInvestmentRealEstate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_RealizedInvestmentGainsLosses">
<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>Amount of realized gain (loss) on investment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04.3(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<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;">us-gaap_RealizedInvestmentGainsLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_FloridaBasedLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_FloridaBasedLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R62.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189855384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</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_us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract', window );"><strong>Equity Method Investments and Joint Ventures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_InvestmentEliminatedUponConsolidation', window );">Investment eliminated upon consolidation</a></td>
<td class="nump">$ 63,165<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Assets acquired: Cash</a></td>
<td class="nump">13,419<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings', window );">Assets acquired:Building</a></td>
<td class="nump">630,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand', window );">Assets acquired: Land</a></td>
<td class="nump">85,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Liabilities assumed: Accounts payable</a></td>
<td class="num">(15,797)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt', window );">Liabilities assumed: Long term debt</a></td>
<td class="num">(450,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Liabilities assumed: Deferred income tax liability</a></td>
<td class="num">(66,116)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Total identifiable net assets:</a></td>
<td class="nump">196,506<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_GainOnAcquisitionOfEnpRealty', window );">Gain on acquisition of ENP Realty</a></td>
<td class="nump">$ 133,341<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_GainOnAcquisitionOfEnpRealty">
<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>Gain on acquisition of ENP Realty.</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;">FSI_GainOnAcquisitionOfEnpRealty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_FSI_InvestmentEliminatedUponConsolidation">
<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>Investment Eliminated Upon Consolidation.</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;">FSI_InvestmentEliminatedUponConsolidation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings">
<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>Amount of facility held for productive use including, but not limited to, office, production, storage and distribution facilities, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123413009&amp;loc=d3e4845-128472<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;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<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>Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123413009&amp;loc=d3e4845-128472<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;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable">
<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>Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123413009&amp;loc=d3e4845-128472<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;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt">
<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>Amount of long-term debt due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123413009&amp;loc=d3e4845-128472<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;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities">
<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>Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123413009&amp;loc=d3e4845-128472<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;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand">
<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>Amount of real estate acquired, at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123413009&amp;loc=d3e4845-128472<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;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet">
<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>Amount recognized as of the acquisition date for the identifiable assets acquired in excess of (less than) the aggregate liabilities assumed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=123455525&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123413009&amp;loc=d3e4845-128472<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;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract">
<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 );">- References</a><div><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;">us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R63.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189472344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INVESTMENTS (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">1 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Jan. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpRealtyLLCMember', window );">Enp Realty LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners', window );">Non-controlling interests</a></td>
<td class="nump">35.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember', window );">Enp Peru Investments Llc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership interest</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromContributionsFromAffiliates', window );">Proceeds from investment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30,478<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpRealtyLLCMember', window );">Enp Realty LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership interest</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_AppliedHoldingCorpMember', window );">Applied Holding Corp [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease', window );">Investment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear', window );">Debt conversion due date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_AppliedHoldingCorpMember', window );">Applied Holding Corp [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt Instrument, Term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_TrioOpportunityCorpMember', window );">Trio Opportunity Corp [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease', window );">Investment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_TrioOpportunityCorpMember', window );">Trio Opportunity Corp [Member] | Common Class B [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Non-voting shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Share price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10.00<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_FloridaBasedLLCMember', window );">Florida Based LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership interest</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease', window );">Investment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,001,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestrictedCashNoncurrent', window );">Restricted cash, released upon reaching milestone</a></td>
<td class="nump">$ 1,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration', window );">Contigent consideration of additional payment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,518,684<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,982,281<span></span>
</td>
<td class="nump">7,476,047<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts Receivable</a></td>
<td class="nump">1,593,272<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,202,345<span></span>
</td>
<td class="nump">$ 1,593,272<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_LygosIncMember', window );">Lygos Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease', window );">Investment</a></td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNet">
<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>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 310<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123366838&amp;loc=d3e3073-115593<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<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;">us-gaap_AccountsReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration">
<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>Amount of contingent consideration recognized as part of consideration transferred in asset acquisition.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 50<br> -Section 30<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123362884&amp;loc=d3e9212-128498<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 50<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123385561&amp;loc=d3e9135-128495<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 50<br> -Section 30<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123362884&amp;loc=d3e9215-128498<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;">us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear">
<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>Year of expiration or mandatory redemption of the financial instrument issued in exchange for the original debt being converted in a noncash or part noncash transaction, in YYYY format.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4304-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4332-108586<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;">us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:gYearListItemType</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_us-gaap_DebtInstrumentTerm">
<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>Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</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;">us-gaap_DebtInstrumentTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_us-gaap_EquityMethodInvestmentOwnershipPercentage">
<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 percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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;">us-gaap_EquityMethodInvestmentOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease">
<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>Amount of increase (decrease) in net assets from operations of investment company.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 205<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118262037&amp;loc=d3e9915-115836<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 220<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=124433917&amp;loc=SL114874234-224268<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;">us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</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_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners">
<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 equity interest of noncontrolling shareholders, partners or other equity holders in consolidated 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;">us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromContributionsFromAffiliates">
<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 cash inflow from an entity that is affiliated with the entity by means of direct or indirect ownership.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3255-108585<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;">us-gaap_ProceedsFromContributionsFromAffiliates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_RestrictedCashNoncurrent">
<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>Amount of cash restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-107765<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=SL98516268-108586<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 210<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120413173&amp;loc=SL116631458-115580<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;">us-gaap_RestrictedCashNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<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>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_SharePrice">
<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>Price of a single share of a number of saleable stocks of a company.</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;">us-gaap_SharePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues">
<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>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_StockIssuedDuringPeriodSharesNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_srt_OwnershipAxis=FSI_EnpRealtyLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=FSI_EnpRealtyLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_EnpRealtyLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpRealtyLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_AppliedHoldingCorpMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_AppliedHoldingCorpMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_TrioOpportunityCorpMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_TrioOpportunityCorpMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassBMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassBMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_FloridaBasedLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_FloridaBasedLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_LygosIncMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_LygosIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R64.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440188697688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHORT-TERM LINE OF CREDIT (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">1 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2021</div></th>
<th class="th"><div>Aug. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Aug. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Line of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,300,819<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,116,073<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember', window );">Harris Bank [Member] | NanoChem Solutions Inc [Member] | Term Loan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument interest rate</a></td>
<td class="nump">4.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember', window );">New Agreement [Member] | NanoChem Solutions Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_LoanGuaranteedRate', window );">Loan guaranteed rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Line of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,950,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember', window );">New Agreement [Member] | Midland States Bank [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Aggregate amount of revolving line of credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityInterestRateDuringPeriod', window );">Debt effective rate</a></td>
<td class="nump">0.50%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd', window );">Annual interest rate of loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.50%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermBorrowings', window );">Short-term borrowings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 811,665<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 541,456<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember', window );">New Agreement [Member] | Midland States Bank [Member] | Subsequent Event [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCredit', window );">Revolving line of credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember', window );">New Agreement [Member] | Midland States Bank [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd', window );">Annual interest rate of loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember', window );">New Agreement [Member] | Harris Bank [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Aggregate amount of revolving line of credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_EligiblePercentageOfDomesticAccountsReceivable', window );">Eligible percentage of domestic accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">80.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_PercentageOfForeignAccountsReceivableOfInventory', window );">Percentage of foreign accounts receivable of inventory</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember', window );">New Agreement [Member] | Harris Bank [Member] | Midland States Bank [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Aggregate amount of revolving line of credit</a></td>
<td class="nump">$ 3,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_EligiblePercentageOfDomesticAccountsReceivable', window );">Eligible percentage of domestic accounts receivable</a></td>
<td class="nump">80.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_PercentageOfForeignAccountsReceivableOfInventory', window );">Percentage of foreign accounts receivable of inventory</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd', window );">Annual interest rate of loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.75%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Line of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,489,154<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,574,617<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_EligiblePercentageOfDomesticAccountsReceivable">
<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>Eligible percentage of domestic accounts receivable.</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;">FSI_EligiblePercentageOfDomesticAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_FSI_LoanGuaranteedRate">
<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>Loan guaranteed rate.</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;">FSI_LoanGuaranteedRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_PercentageOfForeignAccountsReceivableOfInventory">
<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>Percentage of foreign accounts receivable of inventory.</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;">FSI_PercentageOfForeignAccountsReceivableOfInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<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>Contractual interest rate for funds borrowed, under the debt agreement.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCredit">
<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 carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<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;">us-gaap_LineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd">
<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 effective interest rate at the end of the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityInterestRateDuringPeriod">
<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 effective interest rate during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LineOfCreditFacilityInterestRateDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_LineOfCreditFacilityLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_LineOfCreditFacilityLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">
<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>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LinesOfCreditCurrent">
<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 carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LinesOfCreditCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermBorrowings">
<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>Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than one year or the normal operating cycle, if longer.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<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;">us-gaap_ShortTermBorrowings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_NanoChemSolutionIncMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_NanoChemSolutionIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=FSI_TermLoanMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=FSI_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityAxis=FSI_HarrisBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityAxis=FSI_HarrisBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<FILENAME>R65.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189085880">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF INTEREST LOAN REPAYMENT (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Oct. 31, 2020</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteOneWithMidlandBankMember', window );">Promissory Note One With Midland Bank [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2022</a></td>
<td class="nump">$ 382,705<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">2023</a></td>
<td class="nump">397,414<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">2025</a></td>
<td class="nump">413,516<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">2025</a></td>
<td class="nump">$ 360,409<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteWithMidlandBankMember', window );">Promissory Note With Midland Bank [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 29,749<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">29,749<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">29,749<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 29,749<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<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>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<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;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">
<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>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<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;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">
<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>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<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;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<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>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<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;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermDebtLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_ShortTermDebtLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteOneWithMidlandBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteOneWithMidlandBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteWithMidlandBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=FSI_PromissoryNoteWithMidlandBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>R66.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440192376408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF LOAN COVENANTS (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Balance, January 1</a></td>
<td class="nump">$ 3,847,638<span></span>
</td>
<td class="nump">$ 4,380,393<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromLoans', window );">Plus: Proceeds from loans</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">3,413,160<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ProceedsFromLoanAcquiredWithAcquisition', window );">Plus: Loan acquired with acquisition of ENP Realty</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">450,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfBankDebt', window );">Less: Forgiveness on PPP loans</a></td>
<td class="num">(537,960)<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForProceedsFromDepositOnLoan', window );">Less: Payments on loan</a></td>
<td class="num">(943,080)<span></span>
</td>
<td class="num">(4,395,915)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Balance, December 31</a></td>
<td class="nump">$ 2,366,598<span></span>
</td>
<td class="nump">$ 3,847,638<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ProceedsFromLoanAcquiredWithAcquisition">
<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>Plus: Loan acquired with acquisition of ENP Realty.</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;">FSI_ProceedsFromLoanAcquiredWithAcquisition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DebtDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_LongTermDebt">
<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>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForProceedsFromDepositOnLoan">
<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 net cash inflow or outflow from resulting from payment, receipt or drawdown of cash deposit to guarantee a loan during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3095-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3098-108585<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;">us-gaap_PaymentsForProceedsFromDepositOnLoan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ProceedsFromLoans">
<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>Cash received from principal payments made on loans related to operating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3536-108585<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;">us-gaap_ProceedsFromLoans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_RepaymentsOfBankDebt">
<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 cash outflow to settle a bank borrowing during the year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<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;">us-gaap_RepaymentsOfBankDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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>77
<FILENAME>R67.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189887768">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF OUTSTANDING BALANCE LOAN (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="nump">$ 2,366,598<span></span>
</td>
<td class="nump">$ 3,847,638<span></span>
</td>
<td class="nump">$ 4,380,393<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Less: current portion</a></td>
<td class="num">(793,574)<span></span>
</td>
<td class="num">(848,794)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long term balance</a></td>
<td class="nump">1,573,024<span></span>
</td>
<td class="nump">2,998,844<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember', window );">Harris Bank [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankOneMember', window );">Harris Bank One [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember', window );">Midland States Bank [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">125,543<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_FordMotorCreditCompanyMember', window );">Ford Motor Credit Company [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_PaycheckProtectionProgramMember', window );">Paycheck Protection Program [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">322,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_PaycheckProtectionProgramOneMember', window );">Paycheck Protection Program One [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">215,960<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankOneMember', window );">Midland States Bank One [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="nump">1,554,044<span></span>
</td>
<td class="nump">1,920,976<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankTwoMember', window );">Midland States Bank Two [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="nump">381,674<span></span>
</td>
<td class="nump">822,380<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember', window );">Stock Yards Bank Trust [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="nump">$ 430,880<span></span>
</td>
<td class="nump">$ 440,779<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanDisclosureLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_DefinedBenefitPlanDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_LongTermDebt">
<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>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtCurrent">
<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>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<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>Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankOneMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_FordMotorCreditCompanyMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_FordMotorCreditCompanyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_PaycheckProtectionProgramMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_PaycheckProtectionProgramMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_PaycheckProtectionProgramOneMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_PaycheckProtectionProgramOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankOneMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankTwoMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<FILENAME>R68.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440185626200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LONG TERM DEBT (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="6">1 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2020</div></th>
<th class="th"><div>Apr. 30, 2020</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
<th class="th"><div>Oct. 31, 2018</div></th>
<th class="th"><div>Jan. 31, 2018</div></th>
<th class="th"><div>Mar. 31, 2016</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Oct. 31, 2021</div></th>
<th class="th"><div>Apr. 30, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember', window );">Enp Peru Investments Llc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership interest percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpRealtyLLCMember', window );">Enp Realty LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership interest percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember', window );">Harris Bank [Member] | Enp Investments LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember', window );">Harris Bank [Member] | NanoChem Solutions Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Promissory note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 36,272<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember', window );">Harris Bank [Member] | NanoChem Solutions Inc [Member] | Prime Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | NanoChem Solutions Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Promissory note</a></td>
<td class="nump">$ 894,253<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 24,827<span></span>
</td>
<td class="nump">6,218<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt balance owing</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">381,674<span></span>
</td>
<td class="nump">822,380<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | NanoChem Solutions Inc [Member] | Prime Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="nump">3.85%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | Enp Peru Investments Llc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Promissory note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument, term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">7 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,788<span></span>
</td>
<td class="nump">7,588<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt balance owing</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">125,543<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_FordMotorCreditCompanyMember', window );">Ford Motor Credit Company [Member] | Enp Peru Investments Llc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Promissory note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 215,960<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 45,941<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument, term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_PaycheckProtectionProgramMember', window );">Paycheck Protection Program [Member] | NanoChem Solutions Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Promissory note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 322,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument, term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember', window );">Stock Yards Bank Trust [Member] | Enp Realty LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Promissory note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 450,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument, term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,107<span></span>
</td>
<td class="nump">18,049<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt balance owing</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">430,880<span></span>
</td>
<td class="nump">440,779<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember', window );">Stock Yards Bank Trust [Member] | Enp Realty LLC [Member] | Federal Home Loan Bank of Cincinnati [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument, term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember', window );">Stock Yards Bank Trust [Member] | Enp Realty LLC [Member] | Prime Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.35%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember', window );">Stock Yards Bank Trust [Member] | Enp Realty LLC [Member] | Prime Rate [Member] | Federal Home Loan Bank of Cincinnati [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=FSI_TermLoanMember', window );">Term Loan [Member] | Enp Investments LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership interest percentage</a></td>
<td class="nump">65.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=FSI_TermLoanMember', window );">Term Loan [Member] | Harris Bank [Member] | NanoChem Solutions Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Promissory note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument, term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">7 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_PaymentOfMonthlyInstallmentsInterestRate', window );">Payment of monthly installments interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPayment', window );">Debt instrument periodic payment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">75,874<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=FSI_TermLoanMember', window );">Term Loan [Member] | Harris Bank [Member] | NanoChem Solutions Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=FSI_TermLoanMember', window );">Term Loan [Member] | Midland Bank [Member] | NanoChem Solutions Inc [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Promissory note</a></td>
<td class="nump">$ 1,980,947<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument, term</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">69,831<span></span>
</td>
<td class="nump">13,389<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt balance owing</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,554,044<span></span>
</td>
<td class="nump">$ 1,920,976<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=FSI_TermLoanMember', window );">Term Loan [Member] | Midland Bank [Member] | NanoChem Solutions Inc [Member] | Prime Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShortTermDebtLineItems', window );"><strong>Short-term Debt [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="nump">3.85%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_PaymentOfMonthlyInstallmentsInterestRate">
<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>Payment of monthly installments interest rate.</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;">FSI_PaymentOfMonthlyInstallmentsInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_DebtDefaultLongtermDebtAmount">
<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>Amount of outstanding long-term debt or borrowing associated with any securities or credit agreement for which there has been a default in principal, interest, sinking fund, or redemption provisions, or any breach of covenant that existed at the end of the period and subsequently has not been cured.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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;">us-gaap_DebtDefaultLongtermDebtAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFaceAmount">
<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>Face (par) amount of debt instrument at time of issuance.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429444&amp;loc=SL124452920-239629<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<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;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<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>Contractual interest rate for funds borrowed, under the debt agreement.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentPeriodicPayment">
<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>Amount of the required periodic payments including both interest and principal payments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123599511&amp;loc=d3e64711-112823<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;">us-gaap_DebtInstrumentPeriodicPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DebtInstrumentTerm">
<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>Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</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;">us-gaap_DebtInstrumentTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_us-gaap_EquityMethodInvestmentOwnershipPercentage">
<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 percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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;">us-gaap_EquityMethodInvestmentOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpenseDebt">
<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>Amount of the cost of borrowed funds accounted for as interest expense for debt.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6036836-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69F<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495745-112612<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69E<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495743-112612<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495355-112611<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;">us-gaap_InterestExpenseDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ShortTermDebtLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_ShortTermDebtLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpPeruInvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_EnpRealtyLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpRealtyLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_EnpInvestmentsLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpInvestmentsLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_NanoChemSolutionIncMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_NanoChemSolutionIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_PrimeRateMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_PrimeRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_NanoChemSolutionsIncMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_NanoChemSolutionsIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_FordMotorCreditCompanyMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_FordMotorCreditCompanyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_PaycheckProtectionProgramMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_PaycheckProtectionProgramMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis=srt_FederalHomeLoanBankOfCincinnatiMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis=srt_FederalHomeLoanBankOfCincinnatiMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=FSI_TermLoanMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=FSI_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>R69.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190031304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONVERTIBLE NOTE PAYABLE (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">1 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Oct. 31, 2018</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ConsolidatedEntitiesAxis=srt_ParentCompanyMember', window );">Parent Company [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtConversionConvertedInstrumentSharesIssued1', window );">Debt converted to shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200,000<span></span>
</td>
<td class="nump">400,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtConversionConvertedInstrumentAmount1', window );">Debt converted to shares, amount</a></td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentIncreaseAccruedInterest', window );">Accrued interest</a></td>
<td class="nump">$ 13,046<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_EnpInvestmentsLLCMember', window );">Enp Investments LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertibleNotesPayable', window );">Convertible note payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear', window );">Debt convertible due date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Sep. 30,  2023<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtConversionConvertedInstrumentRate', window );">Debt conversion ratio</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConvertibleNotesPayable">
<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>Including the current and noncurrent portions, carrying value as of the balance sheet date of a written promise to pay a note, initially due after one year or beyond the operating cycle if longer, which can be exchanged for a specified amount of one or more securities (typically common stock), at the option of the issuer or the holder.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120401414&amp;loc=d3e603758-122996<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<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;">us-gaap_ConvertibleNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtConversionConvertedInstrumentAmount1">
<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 value of the financial instrument(s) that the original debt is being converted into in a noncash (or part noncash) transaction. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4304-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4332-108586<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;">us-gaap_DebtConversionConvertedInstrumentAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear">
<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>Expiration, mandatory redemption, or due date, in YYYY-MM-DD format, of the financial instrument issued in exchange for the original debt being converted in a noncash or part noncash transaction.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4304-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4332-108586<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;">us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_DebtConversionConvertedInstrumentRate">
<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>Dividend or interest rate associated with the financial instrument issued in exchange for the original debt being converted in a noncash or part noncash transaction. Noncash are transactions that affect recognized assets or liabilities but that do not result in cash receipts or cash payments. Part noncash refers to that portion of the transaction not resulting in cash receipts or cash payments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4304-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4332-108586<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;">us-gaap_DebtConversionConvertedInstrumentRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_DebtConversionConvertedInstrumentSharesIssued1">
<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 number of shares issued in exchange for the original debt being converted in a noncash (or part noncash) transaction. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4332-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4304-108586<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;">us-gaap_DebtConversionConvertedInstrumentSharesIssued1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_DebtInstrumentIncreaseAccruedInterest">
<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>Increase for accrued, but unpaid interest on the debt instrument for the period.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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;">us-gaap_DebtInstrumentIncreaseAccruedInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_srt_ConsolidatedEntitiesAxis=srt_ParentCompanyMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidatedEntitiesAxis=srt_ParentCompanyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=FSI_EnpInvestmentsLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=FSI_EnpInvestmentsLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>R70.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189084440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">Current tax, federal</a></td>
<td class="nump">$ 1,309,503<span></span>
</td>
<td class="nump">$ 739,113<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">Current tax, state</a></td>
<td class="nump">592,394<span></span>
</td>
<td class="nump">334,361<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentForeignTaxExpenseBenefit', window );">Current tax, foreign</a></td>
<td class="nump">91,285<span></span>
</td>
<td class="nump">124,414<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current tax, total</a></td>
<td class="nump">1,993,182<span></span>
</td>
<td class="nump">1,197,888<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit', window );">Deferred income tax, federal</a></td>
<td class="nump">250,153<span></span>
</td>
<td class="nump">158,308<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">Deferred income tax, state</a></td>
<td class="nump">113,164<span></span>
</td>
<td class="nump">71,616<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit', window );">Deferred income tax, foreign</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">179,629<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax, total</a></td>
<td class="nump">363,317<span></span>
</td>
<td class="nump">409,553<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Total</a></td>
<td class="nump">$ 2,356,499<span></span>
</td>
<td class="nump">$ 1,607,441<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentFederalTaxExpenseBenefit">
<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>Amount of current federal tax expense (benefit) pertaining to income (loss) from continuing operations.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_CurrentForeignTaxExpenseBenefit">
<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>Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_CurrentForeignTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_CurrentIncomeTaxExpenseBenefit">
<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>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<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;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_CurrentStateAndLocalTaxExpenseBenefit">
<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>Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredFederalIncomeTaxExpenseBenefit">
<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>Amount of deferred federal income tax expense (benefit) pertaining to income (loss) from continuing operations.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_DeferredFederalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredForeignIncomeTaxExpenseBenefit">
<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>Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_DeferredForeignIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredIncomeTaxExpenseBenefit">
<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>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit">
<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>Amount of deferred state and local tax expense (benefit) pertaining to income (loss) from continuing operations.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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;">us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncomeTaxDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncomeTaxExpenseBenefit">
<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>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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>81
<FILENAME>R71.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189147432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before tax</a></td>
<td class="nump">$ 6,650,756<span></span>
</td>
<td class="nump">$ 5,190,975<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">US statutory tax rates</a></td>
<td class="nump">30.50%<span></span>
</td>
<td class="nump">30.50%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_ExpectedIncomeTaxRecovery', window );">Expected income tax</a></td>
<td class="nump">$ 2,028,481<span></span>
</td>
<td class="nump">$ 1,583,247<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationNondeductibleExpense', window );">Non-deductible items</a></td>
<td class="num">(29,508)<span></span>
</td>
<td class="num">(60,470)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherAdjustments', window );">Change in estimates and other</a></td>
<td class="num">(65,027)<span></span>
</td>
<td class="nump">603,422<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate', window );">Change in enacted tax rate</a></td>
<td class="nump">337,961<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential', window );">Foreign tax rate difference</a></td>
<td class="num">(86,696)<span></span>
</td>
<td class="num">(120,372)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="nump">171,288<span></span>
</td>
<td class="num">(398,386)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Total income tax expense</a></td>
<td class="nump">2,356,499<span></span>
</td>
<td class="nump">1,607,441<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current income tax expense</a></td>
<td class="nump">1,993,182<span></span>
</td>
<td class="nump">1,197,888<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred tax expense (recovery)</a></td>
<td class="nump">$ 363,317<span></span>
</td>
<td class="nump">$ 409,553<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ExpectedIncomeTaxRecovery">
<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>Expected income tax (recovery).</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;">FSI_ExpectedIncomeTaxRecovery</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_CurrentIncomeTaxExpenseBenefit">
<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>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<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;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredIncomeTaxExpenseBenefit">
<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>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<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>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<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;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<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>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123384075&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncomeTaxDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncomeTaxExpenseBenefit">
<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>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<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>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in the valuation allowance for deferred tax assets.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<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;">us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate">
<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>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations, attributable to increase (decrease) in the income tax rates.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32059-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<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;">us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential">
<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>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit).</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<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;">us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncomeTaxReconciliationNondeductibleExpense">
<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>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to nondeductible expenses.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<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;">us-gaap_IncomeTaxReconciliationNondeductibleExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncomeTaxReconciliationOtherAdjustments">
<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>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<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;">us-gaap_IncomeTaxReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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>82
<FILENAME>R72.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189937320">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember', window );">Canada Revenue Agency [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Non capital loss carryforwards</a></td>
<td class="nump">$ 1,443,371<span></span>
</td>
<td class="nump">$ 1,638,357<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets', window );">Intangible assets</a></td>
<td class="nump">19,849<span></span>
</td>
<td class="nump">18,863<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipment', window );">Property, equipment and leaseholds</a></td>
<td class="nump">587,408<span></span>
</td>
<td class="nump">624,016<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsDerivativeInstruments', window );">Financial instruments</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">26,690<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DeferredTaxAssetsLiabilitiesGross', window );">Deferred tax asset (liability)</a></td>
<td class="nump">2,050,628<span></span>
</td>
<td class="nump">2,307,926<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation Allowance</a></td>
<td class="num">(2,050,628)<span></span>
</td>
<td class="num">(2,307,926)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DeferredTaxAssetNet', window );">Net Deferred tax asset</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_InternalRevenueServiceIRSMember', window );">Internal Revenue Service (IRS) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Non capital loss carryforwards</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets', window );">Intangible assets</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipment', window );">Property, equipment and leaseholds</a></td>
<td class="num">(68,282)<span></span>
</td>
<td class="num">(66,116)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsDerivativeInstruments', window );">Financial instruments</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">98,210<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsInvestments', window );">Investments</a></td>
<td class="num">(241,880)<span></span>
</td>
<td class="num">(167,635)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne', window );">Property, equipment and leaseholds</a></td>
<td class="nump">12,697<span></span>
</td>
<td class="nump">201,393<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DeferredTaxAssetNotRecognized', window );">Deferred tax asset not recognized</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_DeferredTaxAssetLiabilitiesNet', window );">Net deferred tax asset (liability)</a></td>
<td class="num">$ (297,465)<span></span>
</td>
<td class="nump">$ 65,852<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DeferredTaxAssetLiabilitiesNet">
<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>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.</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;">FSI_DeferredTaxAssetLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DeferredTaxAssetNet">
<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>Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</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;">FSI_DeferredTaxAssetNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DeferredTaxAssetNotRecognized">
<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>Deferred tax asset not recognized.</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;">FSI_DeferredTaxAssetNotRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DeferredTaxAssetsLiabilitiesGross">
<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>Deferred Tax Assets Liabilities Gross.</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;">FSI_DeferredTaxAssetsLiabilitiesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipment">
<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>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.</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;">FSI_DeferredTaxAssetsPropertyPlantsAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne">
<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>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.</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;">FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsDerivativeInstruments">
<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>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from derivative instruments.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<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;">us-gaap_DeferredTaxAssetsDerivativeInstruments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets">
<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>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from intangible assets including goodwill.</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;">us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsInvestments">
<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>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from investments (excludes investments in subsidiaries and equity method investments).</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;">us-gaap_DeferredTaxAssetsInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards">
<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>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<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;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsValuationAllowance">
<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>Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<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;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwardsLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_OperatingLossCarryforwardsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_InternalRevenueServiceIRSMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_InternalRevenueServiceIRSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>83
<FILENAME>R73.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189128104">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember', window );">Canada Revenue Agency [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">$ 6,275,526<span></span>
</td>
<td class="nump">$ 6,068,054<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandTwentyNineTaxYearMember', window );">2029 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">891,014<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyTaxYearMember', window );">2030 [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">1,081,844<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyOneTaxYearMember', window );">2031 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">1,245,577<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtySevenTaxYearMember', window );">2037 [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">2,238,533<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyEightTaxYearMember', window );">2038 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">372,149<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyNineTaxYearMember', window );">2039 [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">72,378<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandFortyTaxYearMember', window );">2040 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">166,494<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandFortyOneTaxYearMember', window );">2041 [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">$ 207,537<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwards">
<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>Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<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;">us-gaap_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwardsLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_OperatingLossCarryforwardsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandTwentyNineTaxYearMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=FSI_TwoThousandTwentyNineTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyTaxYearMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyOneTaxYearMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyOneTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtySevenTaxYearMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtySevenTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyEightTaxYearMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyEightTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyNineTaxYearMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyNineTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandFortyTaxYearMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=FSI_TwoThousandFortyTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandFortyOneTaxYearMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=FSI_TwoThousandFortyOneTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<FILENAME>R74.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190204600">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>INCOME TAXES (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember', window );">Canada Revenue Agency [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards</a></td>
<td class="nump">$ 6,275,526<span></span>
</td>
<td class="nump">$ 6,068,054<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwards">
<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>Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<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;">us-gaap_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwardsLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_OperatingLossCarryforwardsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>85
<FILENAME>R75.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190189064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to controlling interest</a></td>
<td class="nump">$ 3,449,162<span></span>
</td>
<td class="nump">$ 2,977,050<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic</a></td>
<td class="nump">12,316,254<span></span>
</td>
<td class="nump">12,240,641<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted</a></td>
<td class="nump">12,505,522<span></span>
</td>
<td class="nump">12,302,552<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAndDiluted', window );">Basic and diluted</a></td>
<td class="nump">$ 0.28<span></span>
</td>
<td class="nump">$ 0.24<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<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 );">- References</a><div><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;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_EarningsPerShareBasicAndDiluted">
<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 amount of net income or loss for the period per each share in instances when basic and diluted earnings per share are the same amount and reported as a single line item on the face of the financial statements.  Basic earnings per share is the amount of net income or loss for the period per each share of common stock or unit outstanding during the reporting period.  Diluted earnings per share includes the amount of net income or loss for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<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;">us-gaap_EarningsPerShareBasicAndDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_NetIncomeLoss">
<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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<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 average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1505-109256<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;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<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>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<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;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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>86
<FILENAME>R76.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196655496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details) - shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Anti-dilutive options</a></td>
<td class="nump">21,000<span></span>
</td>
<td class="nump">507,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<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>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_EarningsPerShareAbstract">
<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 );">- References</a><div><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;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>87
<FILENAME>R77.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440192679800">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>INCOME PER SHARE (Details Narrative) - Canada Revenue Agency [Member] - shares<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, shares issued</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock, shares outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwardsLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_OperatingLossCarryforwardsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_PreferredStockSharesIssued">
<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>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496158-112644<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;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<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>Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>88
<FILENAME>R78.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440188673096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF STOCK OPTION ACTIVITIES (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of shares, Beginning Balance</a></td>
<td class="nump">749,000<span></span>
</td>
<td class="nump">635,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Weighted average exercise price, Beginning Balance</a></td>
<td class="nump">$ 2.42<span></span>
</td>
<td class="nump">$ 1.35<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of shares, Granted</a></td>
<td class="nump">170,000<span></span>
</td>
<td class="nump">172,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice', window );">Exercise price per share, Granted</a></td>
<td class="nump">$ 3.61<span></span>
</td>
<td class="nump">$ 2.44<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Weighted average exercise price, Granted</a></td>
<td class="nump">$ 3.61<span></span>
</td>
<td class="nump">$ 2.44<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Number of shares, Cancelled or expired</a></td>
<td class="num">(34,799)<span></span>
</td>
<td class="num">(13,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Weighted average exercise price, Cancelled or expired</a></td>
<td class="nump">$ 2.30<span></span>
</td>
<td class="nump">$ 2.75<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Number of shares, Exercised</a></td>
<td class="num">(94,701)<span></span>
</td>
<td class="num">(45,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Weighted average exercise price, Exercised</a></td>
<td class="nump">$ 1.58<span></span>
</td>
<td class="nump">$ 0.88<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of shares, Ending Balance</a></td>
<td class="nump">789,500<span></span>
</td>
<td class="nump">749,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Weighted average exercise price, Ending Balance</a></td>
<td class="nump">$ 2.78<span></span>
</td>
<td class="nump">$ 2.42<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Number of shares Exercisable, Ending Balance</a></td>
<td class="nump">564,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Weighted average exercise price Exercisable, Ending Balance</a></td>
<td class="nump">$ 2.63<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice', window );">Exercise price per share, Beginning Balance</a></td>
<td class="nump">0.75<span></span>
</td>
<td class="nump">0.75<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice', window );">Exercise price per share, Cancelled or expired</a></td>
<td class="nump">1.42<span></span>
</td>
<td class="nump">2.44<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice', window );">Exercise price per share, Exercised</a></td>
<td class="nump">0.75<span></span>
</td>
<td class="nump">0.75<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice', window );">Exercise price per share, Ending Balance</a></td>
<td class="nump">1.42<span></span>
</td>
<td class="nump">0.75<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice', window );">Exercise price per share Exercisable, Ending Balance</a></td>
<td class="nump">1.42<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice', window );">Exercise price per share, Beginning Balance</a></td>
<td class="nump">4.13<span></span>
</td>
<td class="nump">1.75<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice', window );">Exercise price per share, Cancelled or expired</a></td>
<td class="nump">3.46<span></span>
</td>
<td class="nump">3.46<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice', window );">Exercise price per share, Exercised</a></td>
<td class="nump">3.46<span></span>
</td>
<td class="nump">1.05<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice', window );">Exercise price per share, Ending Balance</a></td>
<td class="nump">4.13<span></span>
</td>
<td class="nump">$ 4.13<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice', window );">Exercise price per share Exercisable, Ending Balance</a></td>
<td class="nump">$ 4.13<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice">
<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>Cancelled or expired, Exercise price per share.</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;">FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice">
<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>Exercised, Exercise price per share.</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;">FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice">
<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>Exercise price per share, Granted.</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;">FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice">
<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>Exercise price per share.</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;">FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice">
<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>Exercise price per share.</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;">FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<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 number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod">
<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 presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)-(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice">
<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>Weighted average price of options that were either forfeited or expired.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)-(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<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>Gross number of share options (or share units) granted during the period.</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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<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>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<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>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<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>Weighted average price at which option holders acquired shares when converting their stock options into shares.</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;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<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>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</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;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1">
<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>Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<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>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<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;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_srt_RangeAxis=srt_MinimumMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>89
<FILENAME>R79.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440198507464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected life - years</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Interest rate</a></td>
<td class="nump">1.23%<span></span>
</td>
<td class="nump">0.37%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Volatility</a></td>
<td class="nump">63.28%<span></span>
</td>
<td class="nump">70.14%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average fair value of options granted</a></td>
<td class="nump">$ 1.23<span></span>
</td>
<td class="nump">$ 1.12<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<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 );">- References</a><div><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;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<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 estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<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 risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<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 weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<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>Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122041274&amp;loc=d3e301413-122809<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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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>90
<FILENAME>R80.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440188675240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>STOCK OPTIONS (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems', window );"><strong>Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Options granted percentage</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Options maximum granted term</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted-average remaining contractual life</a></td>
<td class="text">3 years 2 months 12 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">170,000<span></span>
</td>
<td class="nump">172,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">94,701<span></span>
</td>
<td class="nump">45,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Compensation expense related to non-vested awards, weighted average period</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember', window );">Canada Revenue Agency [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems', window );"><strong>Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Compensation expense related to non-vested awards</a></td>
<td class="nump">$ 229,918<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue', window );">Aggregate intrinsic value of vested options</a></td>
<td class="nump">712,945<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested', window );">Aggregate intrinsic value of vested options exercised</a></td>
<td class="nump">$ 203,701<span></span>
</td>
<td class="nump">$ 56,230<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=FSI_ConsultantsMember', window );">Consultants [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems', window );"><strong>Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">45,000<span></span>
</td>
<td class="nump">45,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock option expense</a></td>
<td class="nump">$ 13,860<span></span>
</td>
<td class="nump">$ 10,080<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_AdditionalExpensesDueToOptionsGranted', window );">Additional expenses due to options granted</a></td>
<td class="nump">$ 51,210<span></span>
</td>
<td class="nump">$ 43,905<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">33,201<span></span>
</td>
<td class="nump">10,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=FSI_EmployeesMember', window );">Employees [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems', window );"><strong>Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">125,000<span></span>
</td>
<td class="nump">127,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock option expense</a></td>
<td class="nump">$ 38,500<span></span>
</td>
<td class="nump">$ 28,316<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_AdditionalExpensesDueToOptionsGranted', window );">Additional expenses due to options granted</a></td>
<td class="nump">$ 106,542<span></span>
</td>
<td class="nump">$ 73,711<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">61,500<span></span>
</td>
<td class="nump">35,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_AdditionalExpensesDueToOptionsGranted">
<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>Additional expenses due to options granted.</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;">FSI_AdditionalExpensesDueToOptionsGranted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<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>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<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>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<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>Gross number of share options (or share units) granted during the period.</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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue">
<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>Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest exercisable or convertible options. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage">
<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>Percentage of vesting of award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested">
<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>Intrinsic value of vested award under share-based payment arrangement. Excludes share and unit options.</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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<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>Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<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>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<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>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<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;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_StockOptionPlanExpense">
<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>Amount of noncash expense for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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;">us-gaap_StockOptionPlanExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_CanadaRevenueAgencyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=FSI_ConsultantsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=FSI_ConsultantsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=FSI_EmployeesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=FSI_EmployeesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>91
<FILENAME>R81.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189859416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CAPITAL STOCK (Details Narrative) - shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_OffsettingAssetsLineItems', window );"><strong>Offsetting Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">94,701<span></span>
</td>
<td class="nump">45,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=FSI_EmployeesStockOptionMember', window );">Employees Stock Option [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_OffsettingAssetsLineItems', window );"><strong>Offsetting Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">61,500<span></span>
</td>
<td class="nump">35,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=FSI_ConsultantsStockOptionsMember', window );">Consultants Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_OffsettingAssetsLineItems', window );"><strong>Offsetting Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">33,201<span></span>
</td>
<td class="nump">10,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OffsettingAssetsLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_OffsettingAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<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>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<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;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_DerivativeInstrumentRiskAxis=FSI_EmployeesStockOptionMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=FSI_EmployeesStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=FSI_ConsultantsStockOptionsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=FSI_ConsultantsStockOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>92
<FILENAME>R82.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189250264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF DISTRIBUTIONS (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems', window );"><strong>Consolidation, Less than Wholly Owned Subsidiary, Parent Ownership Interest, Effects of Changes, Net [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Distribution to noncontrolling interests, Beginning balance</a></td>
<td class="nump">$ 2,561,751<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders', window );">Distribution</a></td>
<td class="num">(804,003)<span></span>
</td>
<td class="num">$ (594,882)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest', window );">Non-controlling interest share of income</a></td>
<td class="nump">845,095<span></span>
</td>
<td class="nump">606,484<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Distribution to noncontrolling interests, Ending balance</a></td>
<td class="nump">2,602,843<span></span>
</td>
<td class="nump">2,561,751<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember', window );">ENP Investments LLC [Member] | Ownership Interest Purchase Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems', window );"><strong>Consolidation, Less than Wholly Owned Subsidiary, Parent Ownership Interest, Effects of Changes, Net [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Distribution to noncontrolling interests, Beginning balance</a></td>
<td class="nump">2,561,751<span></span>
</td>
<td class="nump">2,550,149<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders', window );">Distribution</a></td>
<td class="num">(804,003)<span></span>
</td>
<td class="num">(594,882)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest', window );">Non-controlling interest share of income</a></td>
<td class="nump">845,095<span></span>
</td>
<td class="nump">606,484<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Distribution to noncontrolling interests, Ending balance</a></td>
<td class="nump">$ 2,602,843<span></span>
</td>
<td class="nump">$ 2,561,751<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_MinorityInterest">
<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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which is directly or indirectly attributable to that ownership interest in subsidiary equity which is not attributable to the parent (that is, noncontrolling interest, previously referred to as minority interest).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.31)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<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;">us-gaap_MinorityInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders">
<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>Decrease in noncontrolling interest balance from payment of dividends or other distributions by the non-wholly owned subsidiary or partially owned entity, included in the consolidation of the parent entity, to the noncontrolling interest holders.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<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;">us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest">
<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>Amount of Net Income (Loss) attributable to noncontrolling interest.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<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;">us-gaap_NetIncomeLossAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TypeOfArrangementAxis=FSI_OwnershipInterestPurchaseAgreementMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=FSI_OwnershipInterestPurchaseAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>93
<FILENAME>R83.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440188635192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>NON-CONTROLLING INTERESTS (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2018</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_us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems', window );"><strong>Consolidation, Less than Wholly Owned Subsidiary, Parent Ownership Interest, Effects of Changes, Net [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToMinorityShareholders', window );">Partnership distribution to non-controlling interest</a></td>
<td class="nump">$ 804,003<span></span>
</td>
<td class="nump">$ 594,882<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember', window );">ENP Investments LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems', window );"><strong>Consolidation, Less than Wholly Owned Subsidiary, Parent Ownership Interest, Effects of Changes, Net [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest', window );">Subsidiary company ownership interest rate</a></td>
<td class="nump">65.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByParent', window );">Related party owner ship percentage</a></td>
<td class="nump">35.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToMinorityShareholders', window );">Partnership distribution to non-controlling interest</a></td>
<td class="nump">$ 1,924,995<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpInvestmentMember', window );">ENP Investment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems', window );"><strong>Consolidation, Less than Wholly Owned Subsidiary, Parent Ownership Interest, Effects of Changes, Net [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 4,877,690<span></span>
</td>
<td class="nump">4,094,622<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Equity Method Investment, Ownership Percentage</a></td>
<td class="nump">35.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts Receivable</a></td>
<td class="nump">$ 2,215,119<span></span>
</td>
<td class="nump">$ 2,056,631<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNet">
<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>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 310<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123366838&amp;loc=d3e3073-115593<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<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;">us-gaap_AccountsReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_EquityMethodInvestmentOwnershipPercentage">
<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 percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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;">us-gaap_EquityMethodInvestmentOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestOwnershipPercentageByParent">
<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 parent entity's interest in net assets of the subsidiary, expressed as a percentage.</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;">us-gaap_MinorityInterestOwnershipPercentageByParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToMinorityShareholders">
<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>Amount of cash outflow to a noncontrolling interest. Includes, but not limited to, reduction of noncontrolling interest ownership. Excludes dividends paid to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<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;">us-gaap_PaymentsToMinorityShareholders</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<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>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest">
<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 number of units or percentage investment held in the subsidiary by the limited liability company or limited partnership.</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;">us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=FSI_EnpnvestmentsLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=FSI_EnpInvestmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=FSI_EnpInvestmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>94
<FILENAME>R84.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440189768968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF REPORTABLE SEGMENTS (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">$ 34,416,335<span></span>
</td>
<td class="nump">$ 31,407,454<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Current and deferred income tax expense</a></td>
<td class="nump">2,356,499<span></span>
</td>
<td class="nump">1,607,441<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Segment profit</a></td>
<td class="nump">4,294,257<span></span>
</td>
<td class="nump">3,583,534<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Expenditures for segment assets</a></td>
<td class="nump">782,219<span></span>
</td>
<td class="nump">1,080,598<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=us-gaap_CorporateAndOtherMember', window );">Corporate and Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">34,416,335<span></span>
</td>
<td class="nump">31,407,454<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="nump">199,930<span></span>
</td>
<td class="nump">260,657<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationNonproduction', window );">Depreciation</a></td>
<td class="nump">965,935<span></span>
</td>
<td class="nump">851,672<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Current and deferred income tax expense</a></td>
<td class="nump">2,385,682<span></span>
</td>
<td class="nump">1,607,441<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Segment profit</a></td>
<td class="nump">3,449,162<span></span>
</td>
<td class="nump">2,977,050<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_Segmentassets', window );">Segment assets</a></td>
<td class="nump">39,551,270<span></span>
</td>
<td class="nump">35,087,388<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Expenditures for segment assets</a></td>
<td class="nump">782,219<span></span>
</td>
<td class="nump">1,071,108<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=FSI_EWCPMember', window );">EWCP [Member] | Corporate and Other [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">420,811<span></span>
</td>
<td class="nump">334,423<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">54<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationNonproduction', window );">Depreciation</a></td>
<td class="nump">40,247<span></span>
</td>
<td class="nump">41,969<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Current and deferred income tax expense</a></td>
<td class="nump">24,384<span></span>
</td>
<td class="nump">121,164<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Segment profit</a></td>
<td class="num">(368,994)<span></span>
</td>
<td class="num">(536,220)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_Segmentassets', window );">Segment assets</a></td>
<td class="nump">1,929,537<span></span>
</td>
<td class="nump">2,111,501<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Expenditures for segment assets</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=FSI_BCPAMember', window );">BCPA [Member] | Corporate and Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">33,995,524<span></span>
</td>
<td class="nump">31,073,031<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="nump">199,930<span></span>
</td>
<td class="nump">260,603<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationNonproduction', window );">Depreciation</a></td>
<td class="nump">925,688<span></span>
</td>
<td class="nump">809,703<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Current and deferred income tax expense</a></td>
<td class="nump">2,361,298<span></span>
</td>
<td class="nump">1,486,277<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Segment profit</a></td>
<td class="nump">3,818,156<span></span>
</td>
<td class="nump">3,513,270<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_Segmentassets', window );">Segment assets</a></td>
<td class="nump">37,621,733<span></span>
</td>
<td class="nump">32,975,887<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Expenditures for segment assets</a></td>
<td class="nump">$ 782,219<span></span>
</td>
<td class="nump">$ 1,071,108<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_Segmentassets">
<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>Segment assets.</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;">FSI_Segmentassets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DepreciationNonproduction">
<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 expense recognized in the current period that allocates the cost of nonproduction tangible assets over their useful lives.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<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;">us-gaap_DepreciationNonproduction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncomeTaxExpenseBenefit">
<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>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_InterestExpense">
<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>Amount of the cost of borrowed funds accounted for as interest expense.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<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 cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3213-108585<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;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ProfitLoss">
<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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<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>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_StatementBusinessSegmentsAxis=us-gaap_CorporateAndOtherMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=us-gaap_CorporateAndOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=FSI_EWCPMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=FSI_EWCPMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=FSI_BCPAMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=FSI_BCPAMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>95
<FILENAME>R85.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440198552280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">$ 34,416,335<span></span>
</td>
<td class="nump">$ 31,407,454<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CA', window );">CANADA</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">525,900<span></span>
</td>
<td class="nump">562,626<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=FSI_UnitedStatesandAbroadMember', window );">United States and Abroad [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">$ 33,890,435<span></span>
</td>
<td class="nump">$ 30,844,828<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<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>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_srt_StatementGeographicalAxis=country_CA">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=FSI_UnitedStatesandAbroadMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=FSI_UnitedStatesandAbroadMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>96
<FILENAME>R86.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440194980632">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived assets</a></td>
<td class="nump">$ 10,296,954<span></span>
</td>
<td class="nump">$ 10,965,566<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CA', window );">CANADA</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived assets</a></td>
<td class="nump">191,752<span></span>
</td>
<td class="nump">445,663<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived assets</a></td>
<td class="nump">$ 10,105,202<span></span>
</td>
<td class="nump">$ 10,519,903<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncurrentAssets">
<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>Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<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;">us-gaap_NoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_srt_StatementGeographicalAxis=country_CA">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>97
<FILENAME>R87.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440196972744">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative) - Three Customers [Member] - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_EntityWideRevenueMajorCustomerLineItems', window );"><strong>Revenue, Major Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_FSI_StockOptionExercisePercent', window );">Accounted risk percentage</a></td>
<td class="nump">49.00%<span></span>
</td>
<td class="nump">47.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember', window );">Accounts Receivable [Member]</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_EntityWideRevenueMajorCustomerLineItems', window );"><strong>Revenue, Major Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts receivable</a></td>
<td class="nump">$ 16,917,948<span></span>
</td>
<td class="nump">$ 14,713,127<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_StockOptionExercisePercent">
<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>Stock option exercise percent</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;">FSI_StockOptionExercisePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>FSI_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_us-gaap_AccountsReceivableNet">
<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>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 310<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123366838&amp;loc=d3e3073-115593<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<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;">us-gaap_AccountsReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EntityWideRevenueMajorCustomerLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</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;">us-gaap_EntityWideRevenueMajorCustomerLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_srt_MajorCustomersAxis=FSI_ThreeCustomersMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=FSI_ThreeCustomersMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>98
<FILENAME>R88.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.1</span><table class="report" border="0" cellspacing="2" id="idm140440190107560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUBSEQUENT EVENTS (Details Narrative) - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 29, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">170,000<span></span>
</td>
<td class="nump">172,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=FSI_EmployeeMember', window );">Employee [Member] | Subsequent Event [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">5,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=FSI_EmployeeMember', window );">Employee [Member] | Subsequent Event [Member] | Upon Exercise of Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">20,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<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>Gross number of share options (or share units) granted during the period.</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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_SubsequentEventLineItems">
<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>Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.</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;">us-gaap_SubsequentEventLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_srt_TitleOfIndividualAxis=FSI_EmployeeMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=FSI_EmployeeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TypeOfArrangementAxis=FSI_UponExerciseofStockOptionsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=FSI_UponExerciseofStockOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>99
<FILENAME>form10-ka_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:FSI="http://flexiblesolutions.com/20211231"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:dei="http://xbrl.sec.gov/dei/2021q4"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2021-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="fsi-20211231.xsd" xlink:type="simple"/>
    <context id="From2021-01-01to2021-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="AsOf2022-03-29">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2022-03-29</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2019-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_custom_CapitalInExcessOfParValueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_us-gaap_ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_us-gaap_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_CapitalInExcessOfParValueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_us-gaap_ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_CapitalInExcessOfParValueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">FSI:CapitalInExcessOfParValueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_ParentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnpInvestmentsLlcAndEnpMendotaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentsLlcAndEnpMendotaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2018-01-012018-12-31_custom_EnpnvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="From2018-01-012018-12-31_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember_custom_UnrelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:UnrelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_ShippingAndHandlingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ShippingAndHandlingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_us-gaap_ShippingAndHandlingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ShippingAndHandlingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_ThreePrimaryCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_ThreePrimaryCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">FSI:ThreePrimaryCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_ComputerEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_BoatMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BoatMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_BuildingAndImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BuildingAndImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_TrailerMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:TrailerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_AutomobilesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_PatentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_TechnologyEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TechnologyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_CustomerRelationshipsENPInvestmentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:CustomerRelationshipsENPInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_SoftwareENPInvestmentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:SoftwareENPInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_BuildingAndImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BuildingAndImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_AutomobilesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_ComputerEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TrailerMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:TrailerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_BoatMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BoatMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_LandMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_BuildingAndImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BuildingAndImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_AutomobilesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_ComputerEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_TrailerMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:TrailerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_BoatMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:BoatMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_DevelopedTechnologyRightsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_LandMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-01-12">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2021-01-12</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_EquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_EquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_EquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_us-gaap_EquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_CADMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">FSI:CADMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_CADMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">FSI:CADMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_custom_EnPInvestmentsCorporationLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EnPInvestmentsCorporationLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_EnPInvestmentsCorporationLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnPInvestmentsCorporationLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_EnPInvestmentsCorporationLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnPInvestmentsCorporationLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_ComputerSoftwareIntangibleAssetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:ComputerSoftwareIntangibleAssetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:FiniteLivedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2018-12-31_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2018-12-012018-12-31_custom_AppliedHoldingCorpMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:AppliedHoldingCorpMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="From2018-12-012018-12-31_srt_MaximumMember_custom_AppliedHoldingCorpMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:AppliedHoldingCorpMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="From2018-12-012018-12-31_custom_TrioOpportunityCorpMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:TrioOpportunityCorpMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="From2018-12-012018-12-31_us-gaap_CommonClassBMember_custom_TrioOpportunityCorpMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:TrioOpportunityCorpMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2018-12-31_custom_TrioOpportunityCorpMember_us-gaap_CommonClassBMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:TrioOpportunityCorpMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="From2019-01-012019-01-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-01-31</endDate>
        </period>
    </context>
    <context id="AsOf2019-01-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-01-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2020-12-012020-12-31_custom_LygosIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_LygosIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2019-12-31_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_EnpRealtyLLCMember55765312">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_custom_LygosIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_LygosIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_LygosIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_LygosIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:LygosIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2018-09-30_custom_NewAgreementMember_custom_HarrisBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-09-30</instant>
        </period>
    </context>
    <context id="From2018-09-012018-09-30_custom_NewAgreementMember_custom_HarrisBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-09-01</startDate>
            <endDate>2018-09-30</endDate>
        </period>
    </context>
    <context id="AsOf2021-08-31_custom_NewAgreementMember_custom_MidlandStatesBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-31</instant>
        </period>
    </context>
    <context id="From2021-08-012021-08-30_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-08-30</endDate>
        </period>
    </context>
    <context id="AsOf2021-08-31_srt_MaximumMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-03-31_custom_MidlandStatesBankMember_custom_NewAgreementMember_us-gaap_SubsequentEventMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="From2021-10-012021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-10-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="From2021-10-012021-10-31_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-10-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-10-31</instant>
        </period>
    </context>
    <context id="From2018-10-032018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-10-03</startDate>
            <endDate>2018-10-31</endDate>
        </period>
    </context>
    <context id="AsOf2018-10-31_custom_TermLoanMember_custom_EnpInvestmentsLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-10-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2019-04-30_custom_HarrisBankMember_custom_NanoChemSolutionIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-04-30</instant>
        </period>
    </context>
    <context id="AsOf2019-04-30_custom_HarrisBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-04-30</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_HarrisBankMember_custom_NanoChemSolutionIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-01-31</instant>
        </period>
    </context>
    <context id="From2018-01-012018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-01-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-03-31</instant>
        </period>
    </context>
    <context id="From2016-03-012016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-03-01</startDate>
            <endDate>2016-03-31</endDate>
        </period>
    </context>
    <context id="From2020-04-012020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-04-30</endDate>
        </period>
    </context>
    <context id="AsOf2020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-04-30</instant>
        </period>
    </context>
    <context id="From2020-04-012020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-04-30</endDate>
        </period>
    </context>
    <context id="AsOf2020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-04-30</instant>
        </period>
    </context>
    <context id="AsOf2020-04-30_custom_HarrisBankMember_custom_EnpInvestmentsLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-04-30</instant>
        </period>
    </context>
    <context id="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="From2020-10-012020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-10-31_custom_TermLoanMember_custom_EnpInvestmentsLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_NanoChemSolutionsIncMember_custom_TermLoanMember_custom_MidlandBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_NanoChemSolutionsIncMember_custom_TermLoanMember_custom_MidlandBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-10-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="AsOf2020-10-31_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionsIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-01-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-01-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-01-31_custom_StockYardsBankTrustMember_us-gaap_PrimeRateMember_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-01-31_srt_FederalHomeLoanBankOfCincinnatiMember_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis">srt:FederalHomeLoanBankOfCincinnatiMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-01-31_srt_FederalHomeLoanBankOfCincinnatiMember_custom_StockYardsBankTrustMember_us-gaap_PrimeRateMember_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis">srt:FederalHomeLoanBankOfCincinnatiMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnpRealtyLLCMember_custom_StockYardsBankTrustMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_custom_StockYardsBankTrustMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpRealtyLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_PromissoryNoteOneWithMidlandBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:PromissoryNoteOneWithMidlandBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_PromissoryNoteWithMidlandBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:PromissoryNoteWithMidlandBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:PromissoryNoteOneWithMidlandBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:PromissoryNoteWithMidlandBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_HarrisBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_HarrisBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_HarrisBankOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_HarrisBankOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:HarrisBankOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MidlandStatesBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_MidlandStatesBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_FordMotorCreditCompanyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_FordMotorCreditCompanyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FordMotorCreditCompanyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_PaycheckProtectionProgramMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_PaycheckProtectionProgramMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_PaycheckProtectionProgramOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_PaycheckProtectionProgramOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:PaycheckProtectionProgramOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MidlandStatesBankOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_MidlandStatesBankOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MidlandStatesBankTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_MidlandStatesBankTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:MidlandStatesBankTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_StockYardsBankTrustMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_StockYardsBankTrustMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2018-10-31_custom_EnpInvestmentsLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-10-31</instant>
        </period>
    </context>
    <context id="From2018-10-012018-10-31_custom_EnpInvestmentsLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-10-01</startDate>
            <endDate>2018-10-31</endDate>
        </period>
    </context>
    <context id="From2018-10-012018-10-31_srt_ParentCompanyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">srt:ParentCompanyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-10-01</startDate>
            <endDate>2018-10-31</endDate>
        </period>
    </context>
    <context id="From2019-06-012019-06-30_srt_ParentCompanyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">srt:ParentCompanyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-06-01</startDate>
            <endDate>2019-06-30</endDate>
        </period>
    </context>
    <context id="From2020-04-012020-04-30_srt_ParentCompanyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">srt:ParentCompanyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-04-30</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:CanadaRevenueAgencyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:CanadaRevenueAgencyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:InternalRevenueServiceIRSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:InternalRevenueServiceIRSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TwoThousandTwentyNineTaxYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandTwentyNineTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TwoThousandThirtyTaxYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TwoThousandThirtyOneTaxYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyOneTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TwoThousandThirtySevenTaxYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtySevenTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TwoThousandThirtyEightTaxYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyEightTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TwoThousandThirtyNineTaxYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyNineTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TwoThousandFortyTaxYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandFortyTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TwoThousandFortyOneTaxYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandFortyOneTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_ConsultantsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_ConsultantsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EmployeesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:EmployeesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EmployeesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:EmployeesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_CanadaRevenueAgencyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:CanadaRevenueAgencyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_us-gaap_CanadaRevenueAgencyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:CanadaRevenueAgencyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2019-12-31_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EmployeesStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">FSI:EmployeesStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EmployeesStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">FSI:EmployeesStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_ConsultantsStockOptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">FSI:ConsultantsStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_ConsultantsStockOptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">FSI:ConsultantsStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_EnpnvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnpInvestmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EnpInvestmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_EnpInvestmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_EnpInvestmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpnvestmentsLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:OwnershipInterestPurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:EWCPMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:BCPAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:EWCPMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:BCPAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_country_CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_country_CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_UnitedStatesandAbroadMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">FSI:UnitedStatesandAbroadMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_UnitedStatesandAbroadMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">FSI:UnitedStatesandAbroadMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_country_CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_country_CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_ThreeCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-12-31_custom_ThreeCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-03-29_custom_EmployeeMember_us-gaap_SubsequentEventMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:EmployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-29</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-03-29_custom_EmployeeMember_us-gaap_SubsequentEventMember_custom_UponExerciseofStockOptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:EmployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:UponExerciseofStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-29</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>
    <unit id="Pure">
        <measure>pure</measure>
    </unit>
    <unit id="Segments">
        <measure>FSI:Segments</measure>
    </unit>
    <unit id="CAD">
        <measure>iso4217:CAD</measure>
    </unit>
    <unit id="sqft">
        <measure>utr:sqft</measure>
    </unit>
    <dei:EntityCentralIndexKey contextRef="From2021-01-01to2021-12-31">0001069394</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="From2021-01-01to2021-12-31">true</dei:AmendmentFlag>
    <dei:DocumentFiscalPeriodFocus contextRef="From2021-01-01to2021-12-31">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityIncorporationStateCountryCode contextRef="From2021-01-01to2021-12-31" id="xdx2ixbrl0026">A0</dei:EntityIncorporationStateCountryCode>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl0274"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:GainLossOnSaleOfLand
      contextRef="From2020-01-012020-12-31"
      id="xdx2ixbrl0278"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:PppLoanForgiveness
      contextRef="From2020-01-012020-12-31"
      id="xdx2ixbrl0281"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:GainOnAcquisition
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl0286"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl0370"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:PaycheckProtectionProgramLoanForgiveness
      contextRef="From2020-01-012020-12-31"
      id="xdx2ixbrl0377"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProceedsFromOtherDeposits
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl0406"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl0415"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl0436"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:RepaymentsOfDebt
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl0442"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl0478"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0497"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0498"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0499"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0502"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0505"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0506"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0508"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0515"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0516"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0518"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0523"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0524"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0525"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0526"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2020-01-012020-12-31_us-gaap_ParentMember"
      id="xdx2ixbrl0527"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0531"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0533"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0534"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0536"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0549"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0550"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0551"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0554"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0557"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0558"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0560"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0567"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0568"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0570"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0575"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0576"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0577"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0578"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_us-gaap_ParentMember"
      id="xdx2ixbrl0579"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0583"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0585"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0586"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0588"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InventoryWorkInProcess
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl0789"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember"
      id="xdx2ixbrl0854"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember"
      id="xdx2ixbrl0860"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_LandMember"
      id="xdx2ixbrl0864"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_us-gaap_DevelopedTechnologyRightsMember"
      id="xdx2ixbrl0932"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_LandMember"
      id="xdx2ixbrl0936"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2020-12-31_custom_EnpRealtyLLCMember55765312"
      id="xdx2ixbrl1102"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2021-12-31_custom_EnpRealtyLLCMember"
      id="xdx2ixbrl1104"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2019-12-31_custom_LygosIncMember"
      id="xdx2ixbrl1170"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProceedsFromLoans
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl1349"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:ProceedsFromLoanAcquiredWithAcquisition
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl1352"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:RepaymentsOfBankDebt
      contextRef="From2020-01-012020-12-31"
      id="xdx2ixbrl1356"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_HarrisBankMember"
      id="xdx2ixbrl1366"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2020-12-31_custom_HarrisBankMember"
      id="xdx2ixbrl1368"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_HarrisBankOneMember"
      id="xdx2ixbrl1370"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2020-12-31_custom_HarrisBankOneMember"
      id="xdx2ixbrl1372"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember"
      id="xdx2ixbrl1374"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_FordMotorCreditCompanyMember"
      id="xdx2ixbrl1378"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2020-12-31_custom_FordMotorCreditCompanyMember"
      id="xdx2ixbrl1380"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_PaycheckProtectionProgramMember"
      id="xdx2ixbrl1382"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_PaycheckProtectionProgramOneMember"
      id="xdx2ixbrl1386"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      id="xdx2ixbrl1454"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:IncomeTaxReconciliationChangeInEnactedTaxRate
      contextRef="From2020-01-012020-12-31"
      id="xdx2ixbrl1481"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsDerivativeInstruments
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      id="xdx2ixbrl1515"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:DeferredTaxAssetNet
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      id="xdx2ixbrl1527"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:DeferredTaxAssetNet
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      id="xdx2ixbrl1529"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1531"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1533"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1535"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1537"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsDerivativeInstruments
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1551"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:DeferredTaxAssetNotRecognized
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1555"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:DeferredTaxAssetNotRecognized
      contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1557"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      id="xdx2ixbrl1758"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InterestExpense
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      id="xdx2ixbrl1817"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      id="xdx2ixbrl1847"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      id="xdx2ixbrl1889"
      unitRef="USD"
      xsi:nil="true"/>
    <dei:DocumentType contextRef="From2021-01-01to2021-12-31">10-K/A</dei:DocumentType>
    <dei:DocumentAnnualReport contextRef="From2021-01-01to2021-12-31">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate contextRef="From2021-01-01to2021-12-31">2021-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate contextRef="From2021-01-01to2021-12-31">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="From2021-01-01to2021-12-31">2021</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport contextRef="From2021-01-01to2021-12-31">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="From2021-01-01to2021-12-31">001-31540</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="From2021-01-01to2021-12-31">FLEXIBLE SOLUTIONS INTERNATIONAL, INC.</dei:EntityRegistrantName>
    <dei:EntityTaxIdentificationNumber contextRef="From2021-01-01to2021-12-31">71-1630889</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="From2021-01-01to2021-12-31">6001     54 Ave.</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="From2021-01-01to2021-12-31">Taber</dei:EntityAddressCityOrTown>
    <dei:EntityAddressCountry contextRef="From2021-01-01to2021-12-31">CA</dei:EntityAddressCountry>
    <dei:EntityAddressPostalZipCode contextRef="From2021-01-01to2021-12-31">T1G     1X4</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="From2021-01-01to2021-12-31">(403)</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="From2021-01-01to2021-12-31">223-2995</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="From2021-01-01to2021-12-31">Common     Stock, $0.001 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="From2021-01-01to2021-12-31">FSI</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="From2021-01-01to2021-12-31">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer contextRef="From2021-01-01to2021-12-31">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers contextRef="From2021-01-01to2021-12-31">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus contextRef="From2021-01-01to2021-12-31">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="From2021-01-01to2021-12-31">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="From2021-01-01to2021-12-31">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="From2021-01-01to2021-12-31">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="From2021-01-01to2021-12-31">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag contextRef="From2021-01-01to2021-12-31">false</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany contextRef="From2021-01-01to2021-12-31">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat contextRef="AsOf2021-06-30" decimals="0" unitRef="USD">30491533</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding contextRef="AsOf2022-03-29" decimals="INF" unitRef="Shares">12375746</dei:EntityCommonStockSharesOutstanding>
    <dei:AmendmentDescription contextRef="From2021-01-01to2021-12-31">The purpose of the amendment
is to correct Exhibit 23.1</dei:AmendmentDescription>
    <dei:AuditorName contextRef="From2021-01-01to2021-12-31">Smythe LLP</dei:AuditorName>
    <dei:AuditorFirmId contextRef="From2021-01-01to2021-12-31">995</dei:AuditorFirmId>
    <dei:AuditorLocation contextRef="From2021-01-01to2021-12-31">Vancouver, Canada</dei:AuditorLocation>
    <us-gaap:Cash contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">5710227</us-gaap:Cash>
    <us-gaap:Cash contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">3472776</us-gaap:Cash>
    <us-gaap:DepositsAssetsCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1025347</us-gaap:DepositsAssetsCurrent>
    <us-gaap:DepositsAssetsCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">1000000</us-gaap:DepositsAssetsCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7129329</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">5889813</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">9502005</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">8372476</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">442161</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">302447</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:AssetsCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">23809069</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">19037512</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">4931713</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">5142041</us-gaap:PropertyPlantAndEquipmentNet>
    <FSI:FiniteLivedPatentGross contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">13699</FSI:FiniteLivedPatentGross>
    <FSI:FiniteLivedPatentGross contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">30137</FSI:FiniteLivedPatentGross>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">217267</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">483113</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2600000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">2776000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:DepositsAssetsNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">8540</us-gaap:DepositsAssetsNoncurrent>
    <us-gaap:DepositsAssetsNoncurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">8540</us-gaap:DepositsAssetsNoncurrent>
    <us-gaap:EquityMethodInvestments contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">5424010</us-gaap:EquityMethodInvestments>
    <us-gaap:EquityMethodInvestments contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">4776167</us-gaap:EquityMethodInvestments>
    <us-gaap:Goodwill contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2534275</us-gaap:Goodwill>
    <us-gaap:Goodwill contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">2534275</us-gaap:Goodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">12697</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">299603</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:Assets contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">39551270</us-gaap:Assets>
    <us-gaap:Assets contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">35087388</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1283486</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">558105</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">457062</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">1225804</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:DeferredRevenueCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">349004</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">314277</us-gaap:DeferredRevenueCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">4561396</us-gaap:TaxesPayableCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">2540348</us-gaap:TaxesPayableCurrent>
    <us-gaap:LinesOfCreditCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2300819</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">2116073</us-gaap:LinesOfCreditCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">77715</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">287900</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LongTermDebtCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">793574</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">848794</us-gaap:LongTermDebtCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">9823056</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">7891301</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">139552</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">195213</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">310162</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">233751</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:LongTermDebtNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1573024</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">2998844</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:Liabilities contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">11845794</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">11319109</us-gaap:Liabilities>
    <us-gaap:CommonStockSharesAuthorized contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized contextRef="AsOf2020-12-31" decimals="INF" unitRef="Shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2020-12-31"
      decimals="INF"
      unitRef="USDPShares">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized contextRef="AsOf2020-12-31" decimals="INF" unitRef="Shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2020-12-31"
      decimals="INF"
      unitRef="USDPShares">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesIssued contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">12355246</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">12355246</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued contextRef="AsOf2020-12-31" decimals="INF" unitRef="Shares">12260545</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="AsOf2020-12-31" decimals="INF" unitRef="Shares">12260545</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">12355</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">12261</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">12355</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">12261</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">16983648</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">16633190</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">-775730</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">-872121</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">8882360</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">5433198</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">25102633</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">21206528</us-gaap:StockholdersEquity>
    <us-gaap:MinorityInterest contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2602843</us-gaap:MinorityInterest>
    <us-gaap:MinorityInterest contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">2561751</us-gaap:MinorityInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">27705476</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">23768279</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">39551270</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">35087388</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">34416335</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">31407454</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">23019824</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">21641035</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">11396511</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">9766419</us-gaap:GrossProfit>
    <us-gaap:SalariesAndWages
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">2321285</us-gaap:SalariesAndWages>
    <us-gaap:SalariesAndWages
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">2169825</us-gaap:SalariesAndWages>
    <us-gaap:OfficersCompensation
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">883460</us-gaap:OfficersCompensation>
    <us-gaap:OfficersCompensation
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">804272</us-gaap:OfficersCompensation>
    <us-gaap:GeneralInsuranceExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">581187</us-gaap:GeneralInsuranceExpense>
    <us-gaap:GeneralInsuranceExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">479218</us-gaap:GeneralInsuranceExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">382663</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">453639</us-gaap:OperatingLeaseExpense>
    <FSI:Consulting
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">320759</FSI:Consulting>
    <FSI:Consulting
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">277277</FSI:Consulting>
    <us-gaap:ProfessionalFees
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">285424</us-gaap:ProfessionalFees>
    <us-gaap:ProfessionalFees
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">283842</us-gaap:ProfessionalFees>
    <us-gaap:OtherGeneralExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">269459</us-gaap:OtherGeneralExpense>
    <us-gaap:OtherGeneralExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">250330</us-gaap:OtherGeneralExpense>
    <FSI:InterestExpenses
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">199930</FSI:InterestExpenses>
    <FSI:InterestExpenses
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">260657</FSI:InterestExpenses>
    <us-gaap:SellingAndMarketingExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">172185</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">197196</us-gaap:SellingAndMarketingExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">116411</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">81422</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:TravelAndEntertainmentExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">107894</us-gaap:TravelAndEntertainmentExpense>
    <us-gaap:TravelAndEntertainmentExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">95053</us-gaap:TravelAndEntertainmentExpense>
    <FSI:InvestorRelationsAndTransferAgentFee
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">94256</FSI:InvestorRelationsAndTransferAgentFee>
    <FSI:InvestorRelationsAndTransferAgentFee
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">78930</FSI:InvestorRelationsAndTransferAgentFee>
    <FSI:Commissions
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">62632</FSI:Commissions>
    <FSI:Commissions
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">148922</FSI:Commissions>
    <us-gaap:CommunicationsAndInformationTechnology
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">45482</us-gaap:CommunicationsAndInformationTechnology>
    <us-gaap:CommunicationsAndInformationTechnology
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">43535</us-gaap:CommunicationsAndInformationTechnology>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">-25091</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">6890</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:UtilitiesOperatingExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">21523</us-gaap:UtilitiesOperatingExpense>
    <us-gaap:UtilitiesOperatingExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">17651</us-gaap:UtilitiesOperatingExpense>
    <FSI:ShippingCost
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">16567</FSI:ShippingCost>
    <FSI:ShippingCost
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">12839</FSI:ShippingCost>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">6979</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1016</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:OperatingExpenses
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">5913187</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">5648734</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">5483324</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">4117685</us-gaap:OperatingIncomeLoss>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">9490</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <FSI:GainLossOnSaleOfLand
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">44330</FSI:GainLossOnSaleOfLand>
    <FSI:PppLoanForgiveness
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">537960</FSI:PppLoanForgiveness>
    <us-gaap:GainLossOnInvestments
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">507143</us-gaap:GainLossOnInvestments>
    <us-gaap:GainLossOnInvestments
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">877358</us-gaap:GainLossOnInvestments>
    <FSI:GainOnAcquisition
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">133341</FSI:GainOnAcquisition>
    <us-gaap:InvestmentIncomeInterest
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">77999</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">53101</us-gaap:InvestmentIncomeInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">6650756</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">5190975</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">363317</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">409553</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">1993182</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1197888</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">4294257</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">3583534</us-gaap:ProfitLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">845095</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">606484</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">3449162</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">2977050</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasicAndDiluted
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.28</us-gaap:EarningsPerShareBasicAndDiluted>
    <us-gaap:EarningsPerShareBasicAndDiluted
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="USDPShares">0.24</us-gaap:EarningsPerShareBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Shares">12316254</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Shares">12240641</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Shares">12505522</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Shares">12302552</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">4294257</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">3583534</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">96391</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">122489</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">4390648</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">3706023</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">845095</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">606484</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">3545553</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">3099539</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">4294257</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">3583534</us-gaap:ProfitLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">210112</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">156012</us-gaap:ShareBasedCompensation>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">965935</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">851672</us-gaap:DepreciationAndAmortization>
    <FSI:LeaseRightOfUseFinancing
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">22057</FSI:LeaseRightOfUseFinancing>
    <FSI:LeaseRightOfUseFinancing
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">53768</FSI:LeaseRightOfUseFinancing>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">265846</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">331773</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <FSI:GainLossOnInvestment
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">507143</FSI:GainLossOnInvestment>
    <FSI:GainLossOnInvestment
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">877358</FSI:GainLossOnInvestment>
    <FSI:BadDebtExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">-6979</FSI:BadDebtExpense>
    <FSI:BadDebtExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-1016</FSI:BadDebtExpense>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">363317</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">409553</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">9490</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <FSI:GainLossOnSaleOfLand
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">44330</FSI:GainLossOnSaleOfLand>
    <FSI:PaycheckProtectionProgramLoanForgiveness
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">537960</FSI:PaycheckProtectionProgramLoanForgiveness>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">1246495</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1420614</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">1275746</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-1284607</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">139714</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">83809</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">102856</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">553478</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">2021048</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">770243</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">34727</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">101056</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">4535746</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">5705441</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:ProceedsFromOtherDeposits
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">22090</us-gaap:ProceedsFromOtherDeposits>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">500000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">3152025</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:ProceedsFromSaleOfEquityMethodInvestments
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">359300</us-gaap:ProceedsFromSaleOfEquityMethodInvestments>
    <us-gaap:ProceedsFromSaleOfEquityMethodInvestments
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">972295</us-gaap:ProceedsFromSaleOfEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-13419</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">263380</us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">9490</us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">782219</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1080598</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">-659539</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-3215329</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">184746</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-273909</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">943080</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">4395915</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">3413160</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">287903</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">385541</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:RepaymentsOfDebt
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">500000</us-gaap:RepaymentsOfDebt>
    <us-gaap:PaymentsToMinorityShareholders
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">804003</us-gaap:PaymentsToMinorityShareholders>
    <us-gaap:PaymentsToMinorityShareholders
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">594882</us-gaap:PaymentsToMinorityShareholders>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">140440</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">39750</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">-1709800</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-2697337</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">96391</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">45331</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">2262798</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-161894</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">4472776</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2019-12-31" decimals="0" unitRef="USD">4634670</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">6735574</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">4472776</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">5710227</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">3472776</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:ShortTermInvestments contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1025347</us-gaap:ShortTermInvestments>
    <us-gaap:ShortTermInvestments contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">1000000</us-gaap:ShortTermInvestments>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">464026</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">179029</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">260657</us-gaap:InterestPaidNet>
    <FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">250923</FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities>
    <FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">397140</FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2019-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">12215545</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2019-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">12216</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2019-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">16437473</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2019-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">2456148</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2019-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">-994610</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2019-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">17911227</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2019-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">2550149</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="AsOf2019-12-31" decimals="0" unitRef="USD">20461376</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2020-01-012020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">122489</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2020-01-012020-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">122489</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">122489</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">2977050</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">2977050</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">606484</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">3583534</us-gaap:ProfitLoss>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">45000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2020-01-012020-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">45</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">39705</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2020-01-012020-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">39750</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">39750</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2020-01-012020-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">594882</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">594882</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2020-01-012020-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">156012</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2020-01-012020-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">156012</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">156012</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2020-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">12260545</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2020-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">12261</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2020-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">16633190</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2020-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">5433198</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">-872121</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2020-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">21206528</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2020-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">2561751</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">23768279</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">96391</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">96391</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">96391</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">3449162</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">3449162</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">845095</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">4294257</us-gaap:ProfitLoss>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">94701</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">94</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">140346</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-012021-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">140440</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">140440</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">804003</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">804003</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">210112</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">210112</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">210112</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2021-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">12355246</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2021-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">12355</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2021-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">16983648</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2021-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">8882360</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">-775730</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2021-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">25102633</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2021-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">2602843</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">27705476</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_80F_eus-gaap--BusinessDescriptionAndBasisOfPresentationTextBlock_zAb16u7W6BZ" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;1.
Basis of Presentation&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;. &lt;span style="display: none"&gt;&lt;span id="xdx_82A_zw9r2219Sbl2"&gt;BASIS OF PRESENTATION&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;These
consolidated financial statements include the accounts of Flexible Solutions International, Inc. (the &#x201c;Company&#x201d;), its wholly-owned
subsidiaries Flexible Fermentation Ltd. , NanoChem Solutions Inc. (&#x201c;NanoChem&#x201d;), Flexible Solutions Ltd., Flexible Biomass
LP, FS Biomass Inc., NCS Deferred Corp., Natural Chem SEZC Ltd., and InnFlex Holdings Inc. and its &lt;span id="xdx_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20210101__20211231__srt--OwnershipAxis__custom--EnpInvestmentsLlcAndEnpMendotaMember_zrINb05I0R01" title="Subsidiary company ownership interest rate"&gt;65&lt;/span&gt;% interest in ENP Investments, LLC
(&#x201c;ENP Investments&#x201d;) and ENP Mendota, LLC (&#x201c;ENP Mendota&#x201d;). All inter-company balances and transactions have been
eliminated upon consolidation. The Company was incorporated on May 12, 1998 in the State of Nevada and had no operations until June 30,
1998. In 2019, the Company redomiciled into Alberta, Canada.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
2018, NanoChem completed the purchase of a &lt;span id="xdx_904_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20180101__20181231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zb9uYeATpRi9" title="Subsidiary company ownership interest rate"&gt;65&lt;/span&gt;% interest in ENP Investments for an aggregate purchase price of $&lt;span id="xdx_903_eus-gaap--BusinessCombinationConsiderationTransferred1_c20180101__20181231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Purchase price"&gt;5,110,560&lt;/span&gt;. An unrelated
party owns the remaining &lt;span id="xdx_90A_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--UnrelatedPartyMember_zkAMniuZWwli" title="Subsidiary company ownership interest rate"&gt;35&lt;/span&gt;% interest in ENP Investments, and ENP Investments is consolidated into the financial statements. The outside
investor&#x2019;s ownership interest in ENP Investments is included in noncontrolling interests in these consolidated financial statements
from the acquisition date onward. In 2020, ENP Investments increased its investment in ENP Realty from &lt;span id="xdx_90E_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MinimumMember_zbJbDRB6MF6d" title="Subsidiary company ownership interest rate"&gt;24&lt;/span&gt;% to &lt;span id="xdx_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MaximumMember_zHbG3vIIoMHj" title="Subsidiary company ownership interest rate"&gt;100&lt;/span&gt;%, making ENP Realty
a wholly-owned subsidiary of ENP Investments. In 2021, ENP Realty was renamed ENP Mendota and is consolidated into the financial statements.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company and its subsidiaries develop, manufacture and market specialty chemicals which slow the evaporation of water. One product, HEATSAVR&#xae;,
is marketed for use in swimming pools and spas where its use, by slowing the evaporation of water, allows the water to retain a higher
temperature for a longer period of time and thereby reduces the energy required to maintain the desired temperature of the water in the
pool. Another product, WATERSAVR&#xae;, is marketed for water conservation in irrigation canals, aquaculture, and reservoirs where its
use slows water loss due to evaporation. In addition to the water conservation products, the Company also manufactures and markets water-soluble
chemicals utilizing thermal polyaspartate biopolymers (hereinafter referred to as &#x201c;TPAs&#x201d;), which are beta-proteins manufactured
from the common biological amino acid, L-aspartic. TPAs can be formulated to prevent corrosion and scaling in water piping within the
petroleum, chemical, utility and mining industries. TPAs are also used as proteins to enhance fertilizers in improving crop yields and
can be used as additives for household laundry detergents, consumer care products and pesticides. The TPA division also manufactures
two nitrogen conservation products for agriculture that slows nitrogen loss from fields.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
outbreak of the novel strain of coronavirus, specifically identified as &#x201c;COVID-19&#x201d;, has resulted in a widespread health crisis
that has affected economies and financial markets around the world resulting in an economic downturn. This outbreak may also cause staff
shortages, reduced customer demand, increased government regulations or interventions, all of which may negatively impact the business,
financial condition or results of operations of the Company. The duration and impact of the COVID-19 outbreak is unknown at this time
and it is not possible to reliably estimate the length and severity of these developments.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2021-01-012021-12-31_custom_EnpInvestmentsLlcAndEnpMendotaMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2018-01-012018-12-31_custom_EnpnvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="From2018-01-012018-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">5110560</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember_custom_UnrelatedPartyMember"
      decimals="INF"
      unitRef="Pure">0.35</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_srt_MinimumMember"
      decimals="INF"
      unitRef="Pure">0.24</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_srt_MaximumMember"
      decimals="INF"
      unitRef="Pure">1</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_80F_eus-gaap--SignificantAccountingPoliciesTextBlock_zRp9kDdyeS34" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;2.
&lt;span&gt;Significant Accounting Policies&lt;/span&gt;. &lt;b&gt;&lt;span id="xdx_825_zEgljZhfD5sk" style="display: none"&gt;SIGNIFICANT ACCOUNTING POLICIES&lt;/span&gt;&lt;/b&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;These
consolidated financial statements have been prepared on a historical cost basis, except where otherwise noted, in accordance with accounting
principles generally accepted in the United States applicable to a going concern and reflect the policies outlined below.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_847_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_z0fbKof6pB61" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(a)
&lt;i&gt;&lt;span id="xdx_866_zEIqvYh3ceg5"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company considers all highly liquid investments purchased with an original or remaining maturity of less than three months at the date
of purchase to be cash equivalents. Cash and cash equivalents are maintained with several financial institutions.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84D_eus-gaap--InventoryPolicyTextBlock_z0ma3OFf0Aii" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(b)
&lt;i&gt;&lt;span id="xdx_865_zEaoiY9TyXHb"&gt;Inventories and Cost of Sales&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has three major classes of inventory: completed goods, work in progress and raw materials and supplies. In all classes, inventories
are stated at the lower of cost and net realizable value. The Company applies the first-in, first-out or weighted average cost formulae
to inventories in different subsidiaries. Cost of sales includes all expenditures incurred in bringing the goods to the point of sale.
Inventory costs and costs of sales include direct costs of the raw material, inbound freight charges, warehousing costs, handling costs
(receiving and purchasing) and utilities and overhead expenses related to the Company&#x2019;s manufacturing and processing facilities.
Shipping and handling charges billed to customers are included in revenue (2021 - $&lt;span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zSVrag0rl4X3" title="Revenue from Contract with Customer, Excluding Assessed Tax"&gt;465,493&lt;/span&gt;; 2020 &#x2013; $&lt;span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zmWn9LthbdCa" title="Revenue from Contract with Customer, Excluding Assessed Tax"&gt;427,920&lt;/span&gt;). Shipping and handling
costs incurred are included in cost of goods sold (2021 - $&lt;span id="xdx_900_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zB0aamnpVjB7" title="Cost of Goods and Services Sold"&gt;1,058,674&lt;/span&gt;; 2020 &#x2013; $&lt;span id="xdx_903_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zgvfzDomXrC3" title="Cost of Goods and Services Sold"&gt;1,051,588&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_841_eus-gaap--PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_zvNHD6szx3G7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(c)
&lt;i&gt;&lt;span id="xdx_866_zyTwkWBDX9l"&gt;Allowance for Doubtful Accounts&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company provides an allowance for doubtful accounts when management estimates collectability to be uncertain. Accounts receivable are
continually reviewed to determine which, if any, accounts are doubtful of collection. In making the determination of the appropriate
allowance amount, the Company considers current economic and industry conditions, relationships with each significant customer, overall
customer credit-worthiness and historical experience.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_849_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_z1YulY4myp5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(d)
&lt;i&gt;&lt;span id="xdx_867_znxYHWPSLSHd"&gt;Property, Equipment, Leaseholds and Intangible Assets&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_z5dWLyYYEZO5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following assets are recorded at cost and depreciated using the methods and annual rates shown below:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zlPfzWVw30ke"&gt;SCHEDULE OF METHOD OF DEPRECIATION&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 70%; border-collapse: collapse; margin-right: auto"&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 55%"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 2%"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 43%"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Computer
    hardware&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z44jHLrrTpBi" title="Depreciation method used and annual rate"&gt;30%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Furniture
    and fixtures&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zy1kQmquukqi" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Manufacturing
    equipment&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zq5YxItyna4j" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Office
    equipment&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ziT4ptdsa0I5" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Boat&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z5elPWHeq8mf" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Building
    and improvements&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_905_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zV3slMEDjBmf" title="Depreciation method used and annual rate"&gt;10%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Trailer&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_909_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDpKnIp7Srm9" title="Depreciation method used and annual rate"&gt;30%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Automobiles&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zJ7sAc2aaFOc" title="Depreciation method used and annual rate"&gt;Straight-line
    over 5 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Patents&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_zUQGnoGcumhf" title="Depreciation method used and annual rate"&gt;Straight-line
    over 17 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Technology&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zTRMGRr7mbz5" title="Depreciation method used and annual rate"&gt;Straight-line
    over 10 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Leasehold
    improvements&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zIjK1WBJXIP5" title="Depreciation method used and annual rate"&gt;Straight-line
    over lease term&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Customer
    relationships &#x2013; ENP Investments&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--CustomerRelationshipsENPInvestmentsMember_z58VczgrDlqj" title="Depreciation method used and annual rate"&gt;Straight-line
    over 15 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Software
    &#x2013; ENP Investments&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareENPInvestmentsMember_z7yQ8qdk10R" title="Depreciation method used and annual rate"&gt;Straight-line
    over 3 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p id="xdx_8A7_zSwoGnG8Yfga" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_848_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zphhnjuMvRyc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;e)
&lt;i&gt;&lt;span id="xdx_86C_zXyL7qsob5K7"&gt;Impairment of Long-Lived Assets&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
accordance with FASB Codification Topic 360, &lt;i&gt;&#x201c;Property, Plant and Equipment&#x201d; &lt;/i&gt;(ASC 360), the Company reviews long-lived
assets, including, but not limited to, property, equipment and leaseholds, patents and other assets, for impairment annually or whenever
events or changes in circumstances indicate the carrying amounts of assets may not be recoverable. The carrying value of long-lived assets
is assessed for impairment by evaluating operating performance and future undiscounted cash flows of the underlying assets. If the expected
future cash flows of an asset is less than its carrying value, an impairment measurement is indicated. Impairment charges are recorded
to the extent that an asset&#x2019;s carrying value exceeds its fair value. Accordingly, actual results could vary significantly from
such estimates. There were no impairment charges during the periods presented.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84C_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_zi5V221GjRA7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(f)
&lt;i&gt;&lt;span id="xdx_86D_z177sSOyO1D8"&gt;Foreign Currency&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
functional currency of the Company is the U.S. dollar. The functional currency of three of the Company&#x2019;s subsidiaries is the Canadian
dollar. The translation of the Canadian dollar to the reporting currency of the Company, the U.S. dollar, is performed for assets and
liabilities using exchange rates in effect at the balance sheet date. Revenue and expense transactions are translated using average exchange
rates prevailing during the year. Translation adjustments arising on conversion of the Company&#x2019;s financial statements from the
subsidiary&#x2019;s functional currency, Canadian dollars, into the reporting currency, U.S. dollars, are excluded from the determination
of income (loss) and are disclosed as other comprehensive income in the consolidated statements of income and comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Foreign
exchange gains and losses relating to transactions not denominated in the applicable local currency are included in operating income
(loss) if realized during the year and in comprehensive income (loss) if they remain unrealized at the end of the year.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84F_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zOjsGQ63xU6h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(g)
&lt;i&gt;&lt;span id="xdx_866_zrnFwXrHme95"&gt;Revenue Recognition&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company generates revenue primarily from energy and water conservation products and biodegradable polymers, as further discussed in Note
19.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company follows a five-step model for revenue recognition. The five steps are: (1) identification of the contract(s) with the customer,
(2) identification of the performance obligation(s) in the contract(s), (3) determination of the transaction price, (4) allocation of
the transaction price to the performance obligation, and (5) recognition of revenue when (or as) the performance obligation is satisfied.
The Company has fulfilled its performance obligations when control transfers to the customer, which is generally at the time the product
is shipped since risk of loss is transferred to the purchaser upon delivery to the carrier. For shipments which are F.O.B. shipping point,
the Company has elected to account for shipping and handling activities as a fulfillment cost rather than as an additional promised service
and performance obligation.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Since
the Company&#x2019;s inception, product returns have been insignificant; therefore, no provision has been established for estimated product
returns.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Deferred
revenues consist of products sold to distributors with payment terms greater than the Company&#x2019;s customary business terms due to
lack of credit history or operating in a new market in which the Company has no prior experience. The Company defers the recognition
of revenue until the criteria for revenue recognition has been met and payments become due or cash is received from these distributors.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84B_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zAqkjZWRvUx7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(h)
&lt;i&gt;&lt;span id="xdx_861_z3cB9HFjbrOb"&gt;Stock Issued in Exchange for Services&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s common stock issued in exchange for services is valued at estimated fair market value based upon trading prices of the
Company&#x2019;s common stock on the dates of the stock transactions. The corresponding expense of the services rendered is recognized
over the period that the services are performed.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_848_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zsGE27Jo2VMa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;i)
&lt;i&gt;&lt;span id="xdx_865_zlbIfOwhXJZk"&gt;Stock-based Compensation&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company recognizes compensation expense for all share-based payments in accordance with FASB Codification Topic 718, &lt;i&gt;Compensation
&#x2014; Stock Compensation&lt;/i&gt;, (ASC 718). Under the fair value recognition provisions of ASC 718, the Company recognizes share-based
compensation expense, net of an estimated forfeiture rate, over the requisite service period of the award.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value at grant date of stock options is estimated using the Black-Scholes option-pricing model. Compensation expense is recognized
on a straight-line basis over the stock option vesting period based on the estimated number of stock options that are expected to vest.
Shares are issued from treasury upon exercise of stock options.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_841_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zZQrPnEebFff" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(j)
&lt;i&gt;&lt;span id="xdx_864_z2GP0Agodi6a"&gt;Other Comprehensive Income&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Other
comprehensive income refers to revenues, expenses, gains and losses that under generally accepted accounting principles are included
in comprehensive income, but are excluded from net income as these amounts are recorded directly as an adjustment to stockholders&#x2019;
equity. The Company&#x2019;s other comprehensive income is comprised only of unrealized foreign exchange gains and losses.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_841_eus-gaap--EarningsPerSharePolicyTextBlock_zKUqclfujMLk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(k)
&lt;i&gt;&lt;span id="xdx_864_zKOSKwGhOYIi"&gt;Income Per Share&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Basic
earnings per share is computed by dividing income available to common stockholders by the weighted average number of common shares outstanding
in the period. Diluted earnings per share are calculated giving effect to the potential dilution of the exercise of options and warrants.
Common equivalent shares, composed of incremental common shares issuable upon the exercise of stock options and warrants are included
in diluted net income per share to the extent that these shares are dilutive. Common equivalent shares that have an anti-dilutive effect
on net income per share have been excluded from the calculation of diluted weighted average shares outstanding for the years ended December
31, 2021 and 2020.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_841_eus-gaap--UseOfEstimates_zMbsb2EoCDn4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;l)
&lt;i&gt;&lt;span id="xdx_864_zsve7NV2tYL5"&gt;Use of Estimates&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States requires
management to make estimates and assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated
financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from
those estimates and would impact the results of operations and cash flows.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Estimates
and underlying assumptions are reviewed at each period end. Revisions to accounting estimates are recognized in the period in which the
estimates are revised and in any future periods affected.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Significant
areas requiring the use of management estimates include assumptions and estimates relating to the valuation of goodwill and intangible
assets, asset impairment analysis, share-based payments, valuation allowances for deferred income tax assets, determination of useful
lives of property, equipment and leaseholds and intangible assets, recoverability of accounts receivable, recoverability of investments,
discount rates for right of use assets and the valuation of inventory.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84B_eus-gaap--FairValueOfFinancialInstrumentsPolicy_z0BH9V9e5lSd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 35.45pt; text-align: justify; text-indent: 0.55pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(m)
&lt;i&gt;&lt;span id="xdx_86A_zGAaOHYPJVZ6"&gt;Fair Value of Financial Instruments&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Fair
value is defined as the exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal
or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.
Valuation techniques used to measure fair value must maximize the use of observable inputs and minimize the use of unobservable inputs.
The standard describes a fair value hierarchy based on three levels of inputs described below, of which the first two are considered
observable and the last unobservable, that may be used to measure fair value.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#x25cf;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Level
    1 &#x2013; Quoted prices in active markets for identical assets or liabilities.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#x25cf;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Level
    2 &#x2013; Inputs other than Level 1 that are observable, either directly or indirectly, such as quoted prices for similar assets
    or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable
    market data for substantially the full term of the assets or liabilities.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#x25cf;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Level
    3 &#x2014; Unobservable inputs that are supported by little or no market activity which is significant to the fair value of the assets
    or liabilities.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair values of cash and cash equivalents, term deposits, accounts receivable, accounts payable, accrued liabilities and the short term
line of credit for all periods presented approximate their respective carrying amounts due to the short term nature of these financial
instruments.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value of the long term debt for all periods presented approximates their respective carrying amounts due to these financial instruments
being at market rates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_849_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zx06inet32O9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(n)
&lt;i&gt;&lt;span id="xdx_86E_zDRybwmA0BIb"&gt;Contingencies&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Certain
conditions may exist as of the date the consolidated financial statements are issued which may result in a loss to the Company but which
will only be resolved when one or more future events occur or fail to occur. The Company&#x2019;s management and its legal counsel assess
such contingent liabilities, and such assessment inherently involves an exercise of judgment. In assessing loss contingencies related
to legal proceedings that are pending against the Company or unasserted claims that may result in such proceedings, the Company&#x2019;s
legal counsel evaluates the perceived merits of any legal proceedings or unasserted claims as well as the perceived merits of the amount
of relief sought or expected to be sought therein.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;If
the assessment of a contingency indicates that it is probable that a material loss has been incurred and the amount of the liability
can be estimated, the estimated liability would be accrued in the Company&#x2019;s consolidated financial statements. If the assessment
indicates that a potential material loss contingency is not probable, but is reasonably possible, or is probable but cannot be estimated,
then the nature of the contingent liability, together with an estimate of the range of possible loss if determinable and material, would
be disclosed.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Loss
contingencies considered remote are generally not disclosed unless they involve guarantees, in which case the guarantees would be disclosed.
Legal fees associated with loss contingencies are expensed as incurred.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_843_eus-gaap--IncomeTaxPolicyTextBlock_z0IrhDCYYHYi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(o)
&lt;i&gt;&lt;span id="xdx_86B_z8jDe7cyMYIi"&gt;Income Taxes&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Income
taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for the expected future
tax consequences attributable to temporary differences between the financial statement carrying amounts of existing assets and liabilities
and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using
enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes
the enactment date. Deferred tax assets are reduced by a valuation allowance so that the assets are recognized only to the extent that
when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will be realized.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
accordance with FASB ASC 740 &#x201c;&lt;i&gt;Income taxes&lt;/i&gt;&#x201d; under the liability method, it is the Company&#x2019;s policy to provide
for uncertain tax positions and the related interest and penalties based upon management&#x2019;s assessment of whether a tax benefit
is more likely than not to be sustained upon examination by tax authorities. At December 31, 2021, the Company believes it has appropriately
accounted for any unrecognized tax benefits. To the extent the Company prevails in matters for which a liability for an unrecognized
benefit is established or is required to pay amounts in excess of the liability, the Company&#x2019;s effective tax rate in a given financial
statement period may be affected. Interest and penalties associated with the Company&#x2019;s tax positions are recorded as interest expense
in the consolidated statements of operations and comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84B_eus-gaap--ConcentrationRiskCreditRisk_zI05byQ0hGPg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(p)
&lt;i&gt;&lt;span id="xdx_868_z1ZwYcJLZdke"&gt;Risk Management&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s credit risk is primarily attributable to its accounts receivable. The amounts presented in the accompanying consolidated
balance sheets are net of allowances for doubtful accounts, estimated by the Company&#x2019;s management based on prior experience and
the current economic environment. The Company is exposed to credit-related losses in the event of non-payment by customers. Credit exposure
is minimized by dealing with only credit worthy counterparties. Revenue for the Company&#x2019;s three primary customers totaled $&lt;span id="xdx_902_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zOS4EpWjI00g" title="Revenue from Contract with Customer, Excluding Assessed Tax"&gt;16,917,947&lt;/span&gt;
(&lt;span id="xdx_902_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zfsy62oWCZHb" title="[custom:ConcentrationRiskThresholdPercentage]"&gt;49&lt;/span&gt;%) for the year ended December 31, 2021 (2020 - $&lt;span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zjszlIo1nerc" title="Revenue from Contract with Customer, Excluding Assessed Tax"&gt;14,713,127&lt;/span&gt; or &lt;span id="xdx_90E_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zuInXhPSLzB5" title="[custom:ConcentrationRiskThresholdPercentage]"&gt;47&lt;/span&gt;%). Accounts receivable for the Company&#x2019;s three primary customers
totaled $&lt;span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z7SYKm5Nz7K" title="Accounts Receivable, after Allowance for Credit Loss"&gt;4,940,995&lt;/span&gt; (&lt;span id="xdx_909_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zMBGqPdzI448" title="[custom:ConcentrationRiskThresholdPercentage]"&gt;69&lt;/span&gt;%) at December 31, 2021 (2020 - $&lt;span id="xdx_902_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zz2ZhwbIOSQg" title="Accounts Receivable, after Allowance for Credit Loss"&gt;3,986,284&lt;/span&gt; or &lt;span id="xdx_90D_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zt2tPUAnV8O7" title="[custom:ConcentrationRiskThresholdPercentage]"&gt;68&lt;/span&gt;%).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
credit risk on cash and cash equivalents is limited because the Company limits its exposure to credit loss by placing its cash and cash
equivalents with major financial institutions. The Company maintains cash balances at financial institutions which at times exceed federally
insured amounts. The Company has not experienced any losses in such accounts.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company is exposed to foreign exchange and interest rate risk to the extent that market value rate fluctuations materially differ from
financial assets and liabilities, subject to fixed long-term rates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
order to manage its exposure to foreign exchange risks, the Company is closely monitoring the fluctuations in the foreign currency exchange
rates and the impact on the value of cash and cash equivalents, accounts receivable, and accounts payable and accrued liabilities. The
Company has not hedged its exposure to currency fluctuations.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company is exposed to interest rate risk to the extent that the fair value or future cash flows for financial liabilities will fluctuate
as a result of changes in market interest rates. The Company is exposed to interest rate risk on its long-term debt.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
order to manage its exposure to interest rate risk, the Company is closely monitoring fluctuations in market interest risks and will
refinance its long-term debt where possible to obtain more favourable rates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84E_eus-gaap--EquityMethodInvestmentsPolicy_zrNend6p3aPd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(q)
&lt;i&gt;&lt;span id="xdx_863_zZwSBY8hy1Rd"&gt;Equity Method Investment&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company accounts for investments using the equity method of accounting if the investment provides the Company the ability to exercise
significant influence, but not control, over the investee. &lt;span id="xdx_909_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20210101__20211231_zqwPvvr5RrQk" title="Equity Method Investment, Description of Principal Activities"&gt;Significant influence is generally deemed to exist if the Company&#x2019;s
ownership interest in the voting stock of the investee ranges between 20% and 50%, although other factors, such as representation on
the investee&#x2019;s board of directors, are considered in determining whether the equity method of accounting is appropriate. &lt;/span&gt;Under
the equity method of accounting, the investment is initially recorded at cost in the consolidated balance sheets under other assets and
adjusted for dividends received and the Company&#x2019;s share of the investee&#x2019;s earnings or losses together with other-than-temporary
impairments which are recorded through other income (loss), net in the consolidated statements of income and comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84E_eus-gaap--GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy_zUQPenO0Idsa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(r)
&lt;i&gt;&lt;span id="xdx_866_zXAPsxvAASYd"&gt;Goodwill and intangible assets&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Goodwill
represents the excess of the purchase price of an acquired entity over the amounts assigned to the assets acquired and liabilities assumed.
Goodwill is not amortized, but is reviewed for impairment annually or more frequently if certain impairment conditions arise. The Company
performs an annual goodwill impairment review in the fourth quarter of each year at the reporting unit level. The evaluation begins with
a qualitative assessment of the factors that could impact the significant inputs used to estimate fair value. If after performing the
qualitative assessment, it is determined that it is more likely than not that the fair value of a reporting unit is greater than its
carrying amount, including goodwill, then no further analysis is necessary. However, if the results of the qualitative test are unclear,
the Company performs a quantitative test, which involves comparing the fair value of a reporting unit with its carrying amount, including
goodwill. The Company uses an income-based valuation method, determining the present value of future cash flows, to estimate the fair
value of a reporting unit. If the fair value of a reporting unit exceeds its positive carrying amount, goodwill of the reporting unit
is considered not impaired, and no further analysis is necessary. If the fair value of the reporting unit is less than its carrying amount,
goodwill impairment would be recognized equal to the amount of the carrying value in excess of the reporting unit&#x2019;s fair value,
limited to the total amount of goodwill allocated to the reporting unit.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.05in; text-align: justify; text-indent: 0.3in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Intangible
assets primarily include trademarks and trade secrets with indefinite lives and customer-relationships with finite lives. Intangible
assets with indefinite lives are not amortized but are tested for impairment on an annual basis, or more frequently if indicators of
impairment are present. Indefinite lived intangible assets are assessed using either a qualitative or a quantitative approach. The qualitative
assessment evaluates factors including macro-economic conditions, industry and company-specific factors, legal and regulatory environments,
and historical company performance in assessing fair value. If it is determined that it is more likely than not that the fair value of
the intangible asset is less than its carrying value, a quantitative test is then performed. Otherwise, no further testing is required.
When using a quantitative approach, the Company compares the fair value of the intangible asset to its carrying amount, including goodwill.
If the estimated fair value of the intangible asset is less than the carrying amount of the intangible asset, impairment is indicated,
requiring recognition of an impairment charge for the differential.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Qualitative
assessments of goodwill and indefinite-lived intangible assets were performed in 2021 and 2020. Based on the results of the assessment,
it was determined that it is more likely than not the reporting unit, customer lists and trademarks had a fair value in excess of their
carrying value. Accordingly, no further impairment testing was completed and no impairment charges related to goodwill or indefinite-lived
intangibles were recognized during the year ended December 31, 2021 or 2020.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Finite-lived
intangible assets are amortized on a straight-line basis over their estimated useful lives. The Company reviews for impairment indicators
of finite-lived intangibles and other long-lived assets as described in the &#x201c;Impairment of Long Lived Assets&#x201d; significant
accounting policy.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_849_eus-gaap--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zpXvQfT1zgll" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(s)
&lt;i&gt;&lt;span id="xdx_86C_zbHK8bRW3XD2"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has implemented all applicable new accounting pronouncements that are in effect. Those pronouncements did not have any material
impact on the consolidated financial statements unless otherwise disclosed, and the Company does not believe that there are any other
new accounting pronouncements that have been issued that might have a material impact on its financial position or results of operations.&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_850_zAgPzyBaYWj3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_847_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_z0fbKof6pB61" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(a)
&lt;i&gt;&lt;span id="xdx_866_zEIqvYh3ceg5"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company considers all highly liquid investments purchased with an original or remaining maturity of less than three months at the date
of purchase to be cash equivalents. Cash and cash equivalents are maintained with several financial institutions.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:InventoryPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_84D_eus-gaap--InventoryPolicyTextBlock_z0ma3OFf0Aii" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(b)
&lt;i&gt;&lt;span id="xdx_865_zEaoiY9TyXHb"&gt;Inventories and Cost of Sales&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has three major classes of inventory: completed goods, work in progress and raw materials and supplies. In all classes, inventories
are stated at the lower of cost and net realizable value. The Company applies the first-in, first-out or weighted average cost formulae
to inventories in different subsidiaries. Cost of sales includes all expenditures incurred in bringing the goods to the point of sale.
Inventory costs and costs of sales include direct costs of the raw material, inbound freight charges, warehousing costs, handling costs
(receiving and purchasing) and utilities and overhead expenses related to the Company&#x2019;s manufacturing and processing facilities.
Shipping and handling charges billed to customers are included in revenue (2021 - $&lt;span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zSVrag0rl4X3" title="Revenue from Contract with Customer, Excluding Assessed Tax"&gt;465,493&lt;/span&gt;; 2020 &#x2013; $&lt;span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zmWn9LthbdCa" title="Revenue from Contract with Customer, Excluding Assessed Tax"&gt;427,920&lt;/span&gt;). Shipping and handling
costs incurred are included in cost of goods sold (2021 - $&lt;span id="xdx_900_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zB0aamnpVjB7" title="Cost of Goods and Services Sold"&gt;1,058,674&lt;/span&gt;; 2020 &#x2013; $&lt;span id="xdx_903_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20200101__20201231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zgvfzDomXrC3" title="Cost of Goods and Services Sold"&gt;1,051,588&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_us-gaap_ShippingAndHandlingMember"
      decimals="0"
      unitRef="USD">465493</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2020-01-012020-12-31_us-gaap_ShippingAndHandlingMember"
      decimals="0"
      unitRef="USD">427920</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2021-01-012021-12-31_us-gaap_ShippingAndHandlingMember"
      decimals="0"
      unitRef="USD">1058674</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2020-01-012020-12-31_us-gaap_ShippingAndHandlingMember"
      decimals="0"
      unitRef="USD">1051588</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_841_eus-gaap--PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_zvNHD6szx3G7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(c)
&lt;i&gt;&lt;span id="xdx_866_zyTwkWBDX9l"&gt;Allowance for Doubtful Accounts&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company provides an allowance for doubtful accounts when management estimates collectability to be uncertain. Accounts receivable are
continually reviewed to determine which, if any, accounts are doubtful of collection. In making the determination of the appropriate
allowance amount, the Company considers current economic and industry conditions, relationships with each significant customer, overall
customer credit-worthiness and historical experience.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_849_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_z1YulY4myp5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(d)
&lt;i&gt;&lt;span id="xdx_867_znxYHWPSLSHd"&gt;Property, Equipment, Leaseholds and Intangible Assets&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_z5dWLyYYEZO5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following assets are recorded at cost and depreciated using the methods and annual rates shown below:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zlPfzWVw30ke"&gt;SCHEDULE OF METHOD OF DEPRECIATION&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 70%; border-collapse: collapse; margin-right: auto"&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 55%"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 2%"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 43%"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Computer
    hardware&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z44jHLrrTpBi" title="Depreciation method used and annual rate"&gt;30%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Furniture
    and fixtures&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zy1kQmquukqi" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Manufacturing
    equipment&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zq5YxItyna4j" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Office
    equipment&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ziT4ptdsa0I5" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Boat&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z5elPWHeq8mf" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Building
    and improvements&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_905_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zV3slMEDjBmf" title="Depreciation method used and annual rate"&gt;10%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Trailer&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_909_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDpKnIp7Srm9" title="Depreciation method used and annual rate"&gt;30%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Automobiles&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zJ7sAc2aaFOc" title="Depreciation method used and annual rate"&gt;Straight-line
    over 5 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Patents&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_zUQGnoGcumhf" title="Depreciation method used and annual rate"&gt;Straight-line
    over 17 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Technology&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zTRMGRr7mbz5" title="Depreciation method used and annual rate"&gt;Straight-line
    over 10 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Leasehold
    improvements&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zIjK1WBJXIP5" title="Depreciation method used and annual rate"&gt;Straight-line
    over lease term&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Customer
    relationships &#x2013; ENP Investments&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--CustomerRelationshipsENPInvestmentsMember_z58VczgrDlqj" title="Depreciation method used and annual rate"&gt;Straight-line
    over 15 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Software
    &#x2013; ENP Investments&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareENPInvestmentsMember_z7yQ8qdk10R" title="Depreciation method used and annual rate"&gt;Straight-line
    over 3 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p id="xdx_8A7_zSwoGnG8Yfga" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <FSI:ScheduleOfMethodOfDepreciationTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_z5dWLyYYEZO5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following assets are recorded at cost and depreciated using the methods and annual rates shown below:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zlPfzWVw30ke"&gt;SCHEDULE OF METHOD OF DEPRECIATION&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 70%; border-collapse: collapse; margin-right: auto"&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 55%"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 2%"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-top: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 43%"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Computer
    hardware&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z44jHLrrTpBi" title="Depreciation method used and annual rate"&gt;30%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Furniture
    and fixtures&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zy1kQmquukqi" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Manufacturing
    equipment&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zq5YxItyna4j" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Office
    equipment&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ziT4ptdsa0I5" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Boat&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90C_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z5elPWHeq8mf" title="Depreciation method used and annual rate"&gt;20%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Building
    and improvements&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_905_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zV3slMEDjBmf" title="Depreciation method used and annual rate"&gt;10%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Trailer&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_909_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDpKnIp7Srm9" title="Depreciation method used and annual rate"&gt;30%
    Declining balance&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Automobiles&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zJ7sAc2aaFOc" title="Depreciation method used and annual rate"&gt;Straight-line
    over 5 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Patents&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_zUQGnoGcumhf" title="Depreciation method used and annual rate"&gt;Straight-line
    over 17 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Technology&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90D_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zTRMGRr7mbz5" title="Depreciation method used and annual rate"&gt;Straight-line
    over 10 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Leasehold
    improvements&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_906_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zIjK1WBJXIP5" title="Depreciation method used and annual rate"&gt;Straight-line
    over lease term&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Customer
    relationships &#x2013; ENP Investments&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--CustomerRelationshipsENPInvestmentsMember_z58VczgrDlqj" title="Depreciation method used and annual rate"&gt;Straight-line
    over 15 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Software
    &#x2013; ENP Investments&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareENPInvestmentsMember_z7yQ8qdk10R" title="Depreciation method used and annual rate"&gt;Straight-line
    over 3 years&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
</FSI:ScheduleOfMethodOfDepreciationTableTextBlock>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_us-gaap_ComputerEquipmentMember">30%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_us-gaap_FurnitureAndFixturesMember">20%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_us-gaap_MachineryAndEquipmentMember">20%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_us-gaap_OfficeEquipmentMember">20%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_custom_BoatMember">20%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_custom_BuildingAndImprovementsMember">10%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_custom_TrailerMember">30%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_us-gaap_AutomobilesMember">Straight-line
    over 5 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_us-gaap_PatentsMember">Straight-line
    over 17 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_us-gaap_TechnologyEquipmentMember">Straight-line
    over 10 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_us-gaap_LeaseholdImprovementsMember">Straight-line
    over lease term</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_custom_CustomerRelationshipsENPInvestmentsMember">Straight-line
    over 15 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2021-01-012021-12-31_custom_SoftwareENPInvestmentsMember">Straight-line
    over 3 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_848_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zphhnjuMvRyc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;e)
&lt;i&gt;&lt;span id="xdx_86C_zXyL7qsob5K7"&gt;Impairment of Long-Lived Assets&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
accordance with FASB Codification Topic 360, &lt;i&gt;&#x201c;Property, Plant and Equipment&#x201d; &lt;/i&gt;(ASC 360), the Company reviews long-lived
assets, including, but not limited to, property, equipment and leaseholds, patents and other assets, for impairment annually or whenever
events or changes in circumstances indicate the carrying amounts of assets may not be recoverable. The carrying value of long-lived assets
is assessed for impairment by evaluating operating performance and future undiscounted cash flows of the underlying assets. If the expected
future cash flows of an asset is less than its carrying value, an impairment measurement is indicated. Impairment charges are recorded
to the extent that an asset&#x2019;s carrying value exceeds its fair value. Accordingly, actual results could vary significantly from
such estimates. There were no impairment charges during the periods presented.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_84C_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_zi5V221GjRA7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(f)
&lt;i&gt;&lt;span id="xdx_86D_z177sSOyO1D8"&gt;Foreign Currency&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
functional currency of the Company is the U.S. dollar. The functional currency of three of the Company&#x2019;s subsidiaries is the Canadian
dollar. The translation of the Canadian dollar to the reporting currency of the Company, the U.S. dollar, is performed for assets and
liabilities using exchange rates in effect at the balance sheet date. Revenue and expense transactions are translated using average exchange
rates prevailing during the year. Translation adjustments arising on conversion of the Company&#x2019;s financial statements from the
subsidiary&#x2019;s functional currency, Canadian dollars, into the reporting currency, U.S. dollars, are excluded from the determination
of income (loss) and are disclosed as other comprehensive income in the consolidated statements of income and comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Foreign
exchange gains and losses relating to transactions not denominated in the applicable local currency are included in operating income
(loss) if realized during the year and in comprehensive income (loss) if they remain unrealized at the end of the year.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_84F_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zOjsGQ63xU6h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(g)
&lt;i&gt;&lt;span id="xdx_866_zrnFwXrHme95"&gt;Revenue Recognition&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company generates revenue primarily from energy and water conservation products and biodegradable polymers, as further discussed in Note
19.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company follows a five-step model for revenue recognition. The five steps are: (1) identification of the contract(s) with the customer,
(2) identification of the performance obligation(s) in the contract(s), (3) determination of the transaction price, (4) allocation of
the transaction price to the performance obligation, and (5) recognition of revenue when (or as) the performance obligation is satisfied.
The Company has fulfilled its performance obligations when control transfers to the customer, which is generally at the time the product
is shipped since risk of loss is transferred to the purchaser upon delivery to the carrier. For shipments which are F.O.B. shipping point,
the Company has elected to account for shipping and handling activities as a fulfillment cost rather than as an additional promised service
and performance obligation.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Since
the Company&#x2019;s inception, product returns have been insignificant; therefore, no provision has been established for estimated product
returns.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Deferred
revenues consist of products sold to distributors with payment terms greater than the Company&#x2019;s customary business terms due to
lack of credit history or operating in a new market in which the Company has no prior experience. The Company defers the recognition
of revenue until the criteria for revenue recognition has been met and payments become due or cash is received from these distributors.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <FSI:StockIssuedInExchangeForServicesPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_84B_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zAqkjZWRvUx7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(h)
&lt;i&gt;&lt;span id="xdx_861_z3cB9HFjbrOb"&gt;Stock Issued in Exchange for Services&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s common stock issued in exchange for services is valued at estimated fair market value based upon trading prices of the
Company&#x2019;s common stock on the dates of the stock transactions. The corresponding expense of the services rendered is recognized
over the period that the services are performed.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</FSI:StockIssuedInExchangeForServicesPolicyTextBlock>
    <us-gaap:CompensationRelatedCostsPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_848_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zsGE27Jo2VMa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;i)
&lt;i&gt;&lt;span id="xdx_865_zlbIfOwhXJZk"&gt;Stock-based Compensation&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company recognizes compensation expense for all share-based payments in accordance with FASB Codification Topic 718, &lt;i&gt;Compensation
&#x2014; Stock Compensation&lt;/i&gt;, (ASC 718). Under the fair value recognition provisions of ASC 718, the Company recognizes share-based
compensation expense, net of an estimated forfeiture rate, over the requisite service period of the award.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value at grant date of stock options is estimated using the Black-Scholes option-pricing model. Compensation expense is recognized
on a straight-line basis over the stock option vesting period based on the estimated number of stock options that are expected to vest.
Shares are issued from treasury upon exercise of stock options.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:CompensationRelatedCostsPolicyTextBlock>
    <us-gaap:ComprehensiveIncomePolicyPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_841_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zZQrPnEebFff" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(j)
&lt;i&gt;&lt;span id="xdx_864_z2GP0Agodi6a"&gt;Other Comprehensive Income&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Other
comprehensive income refers to revenues, expenses, gains and losses that under generally accepted accounting principles are included
in comprehensive income, but are excluded from net income as these amounts are recorded directly as an adjustment to stockholders&#x2019;
equity. The Company&#x2019;s other comprehensive income is comprised only of unrealized foreign exchange gains and losses.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ComprehensiveIncomePolicyPolicyTextBlock>
    <us-gaap:EarningsPerSharePolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_841_eus-gaap--EarningsPerSharePolicyTextBlock_zKUqclfujMLk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(k)
&lt;i&gt;&lt;span id="xdx_864_zKOSKwGhOYIi"&gt;Income Per Share&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Basic
earnings per share is computed by dividing income available to common stockholders by the weighted average number of common shares outstanding
in the period. Diluted earnings per share are calculated giving effect to the potential dilution of the exercise of options and warrants.
Common equivalent shares, composed of incremental common shares issuable upon the exercise of stock options and warrants are included
in diluted net income per share to the extent that these shares are dilutive. Common equivalent shares that have an anti-dilutive effect
on net income per share have been excluded from the calculation of diluted weighted average shares outstanding for the years ended December
31, 2021 and 2020.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:UseOfEstimates contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_841_eus-gaap--UseOfEstimates_zMbsb2EoCDn4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;l)
&lt;i&gt;&lt;span id="xdx_864_zsve7NV2tYL5"&gt;Use of Estimates&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States requires
management to make estimates and assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated
financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from
those estimates and would impact the results of operations and cash flows.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Estimates
and underlying assumptions are reviewed at each period end. Revisions to accounting estimates are recognized in the period in which the
estimates are revised and in any future periods affected.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.45pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Significant
areas requiring the use of management estimates include assumptions and estimates relating to the valuation of goodwill and intangible
assets, asset impairment analysis, share-based payments, valuation allowances for deferred income tax assets, determination of useful
lives of property, equipment and leaseholds and intangible assets, recoverability of accounts receivable, recoverability of investments,
discount rates for right of use assets and the valuation of inventory.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:UseOfEstimates>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_84B_eus-gaap--FairValueOfFinancialInstrumentsPolicy_z0BH9V9e5lSd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 35.45pt; text-align: justify; text-indent: 0.55pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(m)
&lt;i&gt;&lt;span id="xdx_86A_zGAaOHYPJVZ6"&gt;Fair Value of Financial Instruments&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Fair
value is defined as the exchange price that would be received for an asset or paid to transfer a liability (an exit price) in the principal
or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.
Valuation techniques used to measure fair value must maximize the use of observable inputs and minimize the use of unobservable inputs.
The standard describes a fair value hierarchy based on three levels of inputs described below, of which the first two are considered
observable and the last unobservable, that may be used to measure fair value.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#x25cf;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Level
    1 &#x2013; Quoted prices in active markets for identical assets or liabilities.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#x25cf;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Level
    2 &#x2013; Inputs other than Level 1 that are observable, either directly or indirectly, such as quoted prices for similar assets
    or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable
    market data for substantially the full term of the assets or liabilities.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#x25cf;&lt;/span&gt;&lt;/td&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Level
    3 &#x2014; Unobservable inputs that are supported by little or no market activity which is significant to the fair value of the assets
    or liabilities.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair values of cash and cash equivalents, term deposits, accounts receivable, accounts payable, accrued liabilities and the short term
line of credit for all periods presented approximate their respective carrying amounts due to the short term nature of these financial
instruments.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value of the long term debt for all periods presented approximates their respective carrying amounts due to these financial instruments
being at market rates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:CommitmentsAndContingenciesPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_849_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zx06inet32O9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(n)
&lt;i&gt;&lt;span id="xdx_86E_zDRybwmA0BIb"&gt;Contingencies&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Certain
conditions may exist as of the date the consolidated financial statements are issued which may result in a loss to the Company but which
will only be resolved when one or more future events occur or fail to occur. The Company&#x2019;s management and its legal counsel assess
such contingent liabilities, and such assessment inherently involves an exercise of judgment. In assessing loss contingencies related
to legal proceedings that are pending against the Company or unasserted claims that may result in such proceedings, the Company&#x2019;s
legal counsel evaluates the perceived merits of any legal proceedings or unasserted claims as well as the perceived merits of the amount
of relief sought or expected to be sought therein.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;If
the assessment of a contingency indicates that it is probable that a material loss has been incurred and the amount of the liability
can be estimated, the estimated liability would be accrued in the Company&#x2019;s consolidated financial statements. If the assessment
indicates that a potential material loss contingency is not probable, but is reasonably possible, or is probable but cannot be estimated,
then the nature of the contingent liability, together with an estimate of the range of possible loss if determinable and material, would
be disclosed.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Loss
contingencies considered remote are generally not disclosed unless they involve guarantees, in which case the guarantees would be disclosed.
Legal fees associated with loss contingencies are expensed as incurred.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:CommitmentsAndContingenciesPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_843_eus-gaap--IncomeTaxPolicyTextBlock_z0IrhDCYYHYi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(o)
&lt;i&gt;&lt;span id="xdx_86B_z8jDe7cyMYIi"&gt;Income Taxes&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Income
taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for the expected future
tax consequences attributable to temporary differences between the financial statement carrying amounts of existing assets and liabilities
and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using
enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes
the enactment date. Deferred tax assets are reduced by a valuation allowance so that the assets are recognized only to the extent that
when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will be realized.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
accordance with FASB ASC 740 &#x201c;&lt;i&gt;Income taxes&lt;/i&gt;&#x201d; under the liability method, it is the Company&#x2019;s policy to provide
for uncertain tax positions and the related interest and penalties based upon management&#x2019;s assessment of whether a tax benefit
is more likely than not to be sustained upon examination by tax authorities. At December 31, 2021, the Company believes it has appropriately
accounted for any unrecognized tax benefits. To the extent the Company prevails in matters for which a liability for an unrecognized
benefit is established or is required to pay amounts in excess of the liability, the Company&#x2019;s effective tax rate in a given financial
statement period may be affected. Interest and penalties associated with the Company&#x2019;s tax positions are recorded as interest expense
in the consolidated statements of operations and comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ConcentrationRiskCreditRisk contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_84B_eus-gaap--ConcentrationRiskCreditRisk_zI05byQ0hGPg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(p)
&lt;i&gt;&lt;span id="xdx_868_z1ZwYcJLZdke"&gt;Risk Management&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s credit risk is primarily attributable to its accounts receivable. The amounts presented in the accompanying consolidated
balance sheets are net of allowances for doubtful accounts, estimated by the Company&#x2019;s management based on prior experience and
the current economic environment. The Company is exposed to credit-related losses in the event of non-payment by customers. Credit exposure
is minimized by dealing with only credit worthy counterparties. Revenue for the Company&#x2019;s three primary customers totaled $&lt;span id="xdx_902_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zOS4EpWjI00g" title="Revenue from Contract with Customer, Excluding Assessed Tax"&gt;16,917,947&lt;/span&gt;
(&lt;span id="xdx_902_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zfsy62oWCZHb" title="[custom:ConcentrationRiskThresholdPercentage]"&gt;49&lt;/span&gt;%) for the year ended December 31, 2021 (2020 - $&lt;span id="xdx_90E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zjszlIo1nerc" title="Revenue from Contract with Customer, Excluding Assessed Tax"&gt;14,713,127&lt;/span&gt; or &lt;span id="xdx_90E_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zuInXhPSLzB5" title="[custom:ConcentrationRiskThresholdPercentage]"&gt;47&lt;/span&gt;%). Accounts receivable for the Company&#x2019;s three primary customers
totaled $&lt;span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z7SYKm5Nz7K" title="Accounts Receivable, after Allowance for Credit Loss"&gt;4,940,995&lt;/span&gt; (&lt;span id="xdx_909_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zMBGqPdzI448" title="[custom:ConcentrationRiskThresholdPercentage]"&gt;69&lt;/span&gt;%) at December 31, 2021 (2020 - $&lt;span id="xdx_902_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zz2ZhwbIOSQg" title="Accounts Receivable, after Allowance for Credit Loss"&gt;3,986,284&lt;/span&gt; or &lt;span id="xdx_90D_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_c20200101__20201231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zt2tPUAnV8O7" title="[custom:ConcentrationRiskThresholdPercentage]"&gt;68&lt;/span&gt;%).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
credit risk on cash and cash equivalents is limited because the Company limits its exposure to credit loss by placing its cash and cash
equivalents with major financial institutions. The Company maintains cash balances at financial institutions which at times exceed federally
insured amounts. The Company has not experienced any losses in such accounts.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company is exposed to foreign exchange and interest rate risk to the extent that market value rate fluctuations materially differ from
financial assets and liabilities, subject to fixed long-term rates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
order to manage its exposure to foreign exchange risks, the Company is closely monitoring the fluctuations in the foreign currency exchange
rates and the impact on the value of cash and cash equivalents, accounts receivable, and accounts payable and accrued liabilities. The
Company has not hedged its exposure to currency fluctuations.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company is exposed to interest rate risk to the extent that the fair value or future cash flows for financial liabilities will fluctuate
as a result of changes in market interest rates. The Company is exposed to interest rate risk on its long-term debt.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
order to manage its exposure to interest rate risk, the Company is closely monitoring fluctuations in market interest risks and will
refinance its long-term debt where possible to obtain more favourable rates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember"
      decimals="0"
      unitRef="USD">16917947</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <FSI:ConcentrationRiskThresholdPercentage
      contextRef="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember"
      decimals="INF"
      unitRef="Pure">0.49</FSI:ConcentrationRiskThresholdPercentage>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember"
      decimals="0"
      unitRef="USD">14713127</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <FSI:ConcentrationRiskThresholdPercentage
      contextRef="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember"
      decimals="INF"
      unitRef="Pure">0.47</FSI:ConcentrationRiskThresholdPercentage>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2021-12-31_custom_ThreePrimaryCustomersMember"
      decimals="0"
      unitRef="USD">4940995</us-gaap:AccountsReceivableNet>
    <FSI:ConcentrationRiskThresholdPercentage
      contextRef="From2021-01-012021-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.69</FSI:ConcentrationRiskThresholdPercentage>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2020-12-31_custom_ThreePrimaryCustomersMember"
      decimals="0"
      unitRef="USD">3986284</us-gaap:AccountsReceivableNet>
    <FSI:ConcentrationRiskThresholdPercentage
      contextRef="From2020-01-012020-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.68</FSI:ConcentrationRiskThresholdPercentage>
    <us-gaap:EquityMethodInvestmentsPolicy contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_84E_eus-gaap--EquityMethodInvestmentsPolicy_zrNend6p3aPd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(q)
&lt;i&gt;&lt;span id="xdx_863_zZwSBY8hy1Rd"&gt;Equity Method Investment&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company accounts for investments using the equity method of accounting if the investment provides the Company the ability to exercise
significant influence, but not control, over the investee. &lt;span id="xdx_909_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20210101__20211231_zqwPvvr5RrQk" title="Equity Method Investment, Description of Principal Activities"&gt;Significant influence is generally deemed to exist if the Company&#x2019;s
ownership interest in the voting stock of the investee ranges between 20% and 50%, although other factors, such as representation on
the investee&#x2019;s board of directors, are considered in determining whether the equity method of accounting is appropriate. &lt;/span&gt;Under
the equity method of accounting, the investment is initially recorded at cost in the consolidated balance sheets under other assets and
adjusted for dividends received and the Company&#x2019;s share of the investee&#x2019;s earnings or losses together with other-than-temporary
impairments which are recorded through other income (loss), net in the consolidated statements of income and comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:EquityMethodInvestmentsPolicy>
    <us-gaap:EquityMethodInvestmentDescriptionOfPrincipalActivities contextRef="From2021-01-01to2021-12-31">Significant influence is generally deemed to exist if the Company&#x2019;s
ownership interest in the voting stock of the investee ranges between 20% and 50%, although other factors, such as representation on
the investee&#x2019;s board of directors, are considered in determining whether the equity method of accounting is appropriate.</us-gaap:EquityMethodInvestmentDescriptionOfPrincipalActivities>
    <us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_84E_eus-gaap--GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy_zUQPenO0Idsa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(r)
&lt;i&gt;&lt;span id="xdx_866_zXAPsxvAASYd"&gt;Goodwill and intangible assets&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Goodwill
represents the excess of the purchase price of an acquired entity over the amounts assigned to the assets acquired and liabilities assumed.
Goodwill is not amortized, but is reviewed for impairment annually or more frequently if certain impairment conditions arise. The Company
performs an annual goodwill impairment review in the fourth quarter of each year at the reporting unit level. The evaluation begins with
a qualitative assessment of the factors that could impact the significant inputs used to estimate fair value. If after performing the
qualitative assessment, it is determined that it is more likely than not that the fair value of a reporting unit is greater than its
carrying amount, including goodwill, then no further analysis is necessary. However, if the results of the qualitative test are unclear,
the Company performs a quantitative test, which involves comparing the fair value of a reporting unit with its carrying amount, including
goodwill. The Company uses an income-based valuation method, determining the present value of future cash flows, to estimate the fair
value of a reporting unit. If the fair value of a reporting unit exceeds its positive carrying amount, goodwill of the reporting unit
is considered not impaired, and no further analysis is necessary. If the fair value of the reporting unit is less than its carrying amount,
goodwill impairment would be recognized equal to the amount of the carrying value in excess of the reporting unit&#x2019;s fair value,
limited to the total amount of goodwill allocated to the reporting unit.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.05in; text-align: justify; text-indent: 0.3in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Intangible
assets primarily include trademarks and trade secrets with indefinite lives and customer-relationships with finite lives. Intangible
assets with indefinite lives are not amortized but are tested for impairment on an annual basis, or more frequently if indicators of
impairment are present. Indefinite lived intangible assets are assessed using either a qualitative or a quantitative approach. The qualitative
assessment evaluates factors including macro-economic conditions, industry and company-specific factors, legal and regulatory environments,
and historical company performance in assessing fair value. If it is determined that it is more likely than not that the fair value of
the intangible asset is less than its carrying value, a quantitative test is then performed. Otherwise, no further testing is required.
When using a quantitative approach, the Company compares the fair value of the intangible asset to its carrying amount, including goodwill.
If the estimated fair value of the intangible asset is less than the carrying amount of the intangible asset, impairment is indicated,
requiring recognition of an impairment charge for the differential.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Qualitative
assessments of goodwill and indefinite-lived intangible assets were performed in 2021 and 2020. Based on the results of the assessment,
it was determined that it is more likely than not the reporting unit, customer lists and trademarks had a fair value in excess of their
carrying value. Accordingly, no further impairment testing was completed and no impairment charges related to goodwill or indefinite-lived
intangibles were recognized during the year ended December 31, 2021 or 2020.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.35in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Finite-lived
intangible assets are amortized on a straight-line basis over their estimated useful lives. The Company reviews for impairment indicators
of finite-lived intangibles and other long-lived assets as described in the &#x201c;Impairment of Long Lived Assets&#x201d; significant
accounting policy.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 24.5pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_849_eus-gaap--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zpXvQfT1zgll" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(s)
&lt;i&gt;&lt;span id="xdx_86C_zbHK8bRW3XD2"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has implemented all applicable new accounting pronouncements that are in effect. Those pronouncements did not have any material
impact on the consolidated financial statements unless otherwise disclosed, and the Company does not believe that there are any other
new accounting pronouncements that have been issued that might have a material impact on its financial position or results of operations.&lt;/span&gt;&lt;/p&gt;

</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:LesseeOperatingLeasesTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_80C_eus-gaap--LesseeOperatingLeasesTextBlock_znP3bIgs0Q51" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;3.
&lt;span&gt;Leases &lt;b&gt;&lt;span id="xdx_829_z29kXnC3Cuq2" style="display: none"&gt;LEASES&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;i&gt;&#160;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Accounting
and reporting guidance for leases requires that leases be evaluated and classified as either operating or finance leases by the lessee
and as either operating, sales-type or direct financing leases by the lessor. For leases with terms greater than 12 months, the Company
records the related right-of-use (&#x201c;ROU&#x201d;) asset and lease obligation at the present value of lease payments over the term.
Leases may include fixed rental escalation clauses, renewal options and / or termination options that are factored into the determination
of lease payments when appropriate. The Company&#x2019;s operating leases are included in ROU assets, lease liabilities-current portion
and lease liability-less current portion in the accompanying consolidated balance sheets. ROU assets represent the Company&#x2019;s right
to use an underlying asset for the lease term, and lease liabilities represent the obligation to make lease payments arising from the
lease. The Company&#x2019;s leases do not usually provide a readily determinable implicit rate; therefore, an estimate of the Company&#x2019;s
incremental borrowing rate is used to discount the lease payments based on information available at the lease commencement date. The
discount rate used was &lt;span id="xdx_909_eus-gaap--LesseeOperatingLeaseDiscountRate_iI_pid_dp_c20211231_zz26ykbIW5Rf" title="Operating leases discount rate"&gt;5.5&lt;/span&gt;%.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_893_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_znvdiWs5BOz4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
table below summarizes the right-of-use asset and lease liability for the year ended December 31, 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BE_zmYTjilXJPh8"&gt;SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: 0.5in; border-collapse: collapse; width: 90%"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-decoration: underline; font-weight: bold; text-align: left"&gt;Right of Use Assets&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 84%"&gt;Balance at December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20200101__20201231_zxoFF5obpXR2" style="width: 14%; text-align: right" title="Right of Use Assets Beginning Balance"&gt;789,205&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Addition&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_ecustom--OperatingLeaseAssetsAddition_pp0p0_c20200101__20201231_z8tPdp5n7ouh" style="text-align: right" title="Addition"&gt;260,661&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Termination&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--OperatingLeasesAssetsTermination_c20200101__20201231_pp0p0" style="text-align: right" title="Termination"&gt;(234,980&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Depreciation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20200101__20201231_z4wEdD1YCbV1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation"&gt;(331,773&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance at December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zPKax8oCy2oj" style="text-align: right" title="Right of Use Assets Ending Balance"&gt;483,113&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Depreciation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zLbzOPUeSl2g" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation"&gt;(265,846&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance at December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20210101__20211231_zAFXdNrBCaU8" style="text-align: right" title="Right of Use Assets Ending Balance"&gt;217,267&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-decoration: underline; font-weight: bold; text-align: left"&gt;Lease Liability&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance at December 31, 2019&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20200101__20201231_zJ22uqJEIwc6" style="text-align: right" title="Lease Liability Beginning Balance"&gt;789,205&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Addition&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--OperatingLeasesLiabilityAddition_c20200101__20201231_pp0p0" style="text-align: right" title="Addition"&gt;260,661&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Termination&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_ecustom--OperatingLeasesLiabilityTermination_pp0p0_c20200101__20201231_zsyS7IMrCghj" style="text-align: right" title="Termination"&gt;(234,980&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Lease interest expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--LeaseInterestExpense_c20200101__20201231_pp0p0" style="text-align: right" title="Lease interest expense"&gt;53,768&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Payments&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20200101__20201231_zco2cj0Ysagi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments"&gt;(385,541&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance at December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_z63JfCGl6Jr1" style="text-align: right" title="Lease Liability Ending Balance"&gt;483,113&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Lease interest expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_zctDyBbRYAh7" style="text-align: right" title="Lease interest expense"&gt;22,057&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Payments&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20210101__20211231_z9R3fmOKH9wg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments"&gt;(287,903&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance at December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--OperatingLeaseLiability_iE_pp0p0_c20210101__20211231_z8d0g1z3ncfa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Lease Liability Ending Balance"&gt;217,267&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Short-term portion&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20211231_zKSKEoTDAhg4" style="text-align: right" title="Short-term portion"&gt;77,715&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Long-term portion&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20211231_z3iPAaXNtF67" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term portion"&gt;139,552&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20211231_zVOwesMLPETe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;217,267&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AB_z5jnoL00lvC" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_892_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_z4THXWU4keZ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Undiscounted
rent payments are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zdve3Wfqljr"&gt;SCHEDULE OF UNDISCOUNTED RENT PAYMENTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2022&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_499_20211231_zP2IDO4kxUn3" style="text-align: right"&gt;78,240&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_ztTzIN3bp74h" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;78,240&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_pp0p0_maLOLLPz1VZ_zRiGeaZt7Cw5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2023&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;77,100&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_pp0p0_maLOLLPz1VZ_zu52hjG56X59" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;70,440&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_pp0p0_maLOLLPz1VZ_zMDIJXaMjux2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;71,940&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_pp0p0_mtLOLLPz1VZ_zyqqLngmSJv" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;Total&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;297,720&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_pp0p0_di_zPwpe5PojJug" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;Impact of discounting&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(80,453&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;Lease liability, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;217,267&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A4_z7YN6rlD21Kg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LesseeOperatingLeaseDiscountRate contextRef="AsOf2021-12-31" decimals="INF" unitRef="Pure">0.055</us-gaap:LesseeOperatingLeaseDiscountRate>
    <FSI:SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_893_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_znvdiWs5BOz4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
table below summarizes the right-of-use asset and lease liability for the year ended December 31, 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BE_zmYTjilXJPh8"&gt;SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: 0.5in; border-collapse: collapse; width: 90%"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-decoration: underline; font-weight: bold; text-align: left"&gt;Right of Use Assets&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 84%"&gt;Balance at December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20200101__20201231_zxoFF5obpXR2" style="width: 14%; text-align: right" title="Right of Use Assets Beginning Balance"&gt;789,205&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Addition&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_ecustom--OperatingLeaseAssetsAddition_pp0p0_c20200101__20201231_z8tPdp5n7ouh" style="text-align: right" title="Addition"&gt;260,661&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Termination&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--OperatingLeasesAssetsTermination_c20200101__20201231_pp0p0" style="text-align: right" title="Termination"&gt;(234,980&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Depreciation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20200101__20201231_z4wEdD1YCbV1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation"&gt;(331,773&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance at December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zPKax8oCy2oj" style="text-align: right" title="Right of Use Assets Ending Balance"&gt;483,113&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Depreciation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zLbzOPUeSl2g" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation"&gt;(265,846&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance at December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20210101__20211231_zAFXdNrBCaU8" style="text-align: right" title="Right of Use Assets Ending Balance"&gt;217,267&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-decoration: underline; font-weight: bold; text-align: left"&gt;Lease Liability&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance at December 31, 2019&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20200101__20201231_zJ22uqJEIwc6" style="text-align: right" title="Lease Liability Beginning Balance"&gt;789,205&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Addition&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--OperatingLeasesLiabilityAddition_c20200101__20201231_pp0p0" style="text-align: right" title="Addition"&gt;260,661&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Termination&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_ecustom--OperatingLeasesLiabilityTermination_pp0p0_c20200101__20201231_zsyS7IMrCghj" style="text-align: right" title="Termination"&gt;(234,980&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Lease interest expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--LeaseInterestExpense_c20200101__20201231_pp0p0" style="text-align: right" title="Lease interest expense"&gt;53,768&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Payments&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20200101__20201231_zco2cj0Ysagi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments"&gt;(385,541&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance at December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_z63JfCGl6Jr1" style="text-align: right" title="Lease Liability Ending Balance"&gt;483,113&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Lease interest expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_zctDyBbRYAh7" style="text-align: right" title="Lease interest expense"&gt;22,057&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Payments&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20210101__20211231_z9R3fmOKH9wg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments"&gt;(287,903&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance at December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--OperatingLeaseLiability_iE_pp0p0_c20210101__20211231_z8d0g1z3ncfa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Lease Liability Ending Balance"&gt;217,267&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Short-term portion&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20211231_zKSKEoTDAhg4" style="text-align: right" title="Short-term portion"&gt;77,715&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Long-term portion&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20211231_z3iPAaXNtF67" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term portion"&gt;139,552&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20211231_zVOwesMLPETe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;217,267&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</FSI:SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="AsOf2019-12-31" decimals="0" unitRef="USD">789205</us-gaap:OperatingLeaseRightOfUseAsset>
    <FSI:OperatingLeaseAssetsAddition
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">260661</FSI:OperatingLeaseAssetsAddition>
    <FSI:OperatingLeasesAssetsTermination
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-234980</FSI:OperatingLeasesAssetsTermination>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">331773</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">483113</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">265846</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">217267</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2019-12-31" decimals="0" unitRef="USD">789205</us-gaap:OperatingLeaseLiability>
    <FSI:OperatingLeasesLiabilityAddition
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">260661</FSI:OperatingLeasesLiabilityAddition>
    <FSI:OperatingLeasesLiabilityTermination
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-234980</FSI:OperatingLeasesLiabilityTermination>
    <FSI:LeaseInterestExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">53768</FSI:LeaseInterestExpense>
    <us-gaap:OperatingLeasePayments
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">385541</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">483113</us-gaap:OperatingLeaseLiability>
    <FSI:LeaseInterestExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">22057</FSI:LeaseInterestExpense>
    <us-gaap:OperatingLeasePayments
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">287903</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">217267</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">77715</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">139552</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">217267</us-gaap:OperatingLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_892_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_z4THXWU4keZ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Undiscounted
rent payments are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zdve3Wfqljr"&gt;SCHEDULE OF UNDISCOUNTED RENT PAYMENTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2022&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_499_20211231_zP2IDO4kxUn3" style="text-align: right"&gt;78,240&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_ztTzIN3bp74h" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;78,240&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_pp0p0_maLOLLPz1VZ_zRiGeaZt7Cw5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2023&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;77,100&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_pp0p0_maLOLLPz1VZ_zu52hjG56X59" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;70,440&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_pp0p0_maLOLLPz1VZ_zMDIJXaMjux2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;71,940&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_pp0p0_mtLOLLPz1VZ_zyqqLngmSJv" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;Total&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;297,720&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_pp0p0_di_zPwpe5PojJug" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;Impact of discounting&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(80,453&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;Lease liability, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;217,267&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">78240</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">77100</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">70440</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">71940</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">297720</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">80453</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">217267</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinancingReceivablesTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_806_eus-gaap--FinancingReceivablesTextBlock_zGblIiwEj8Kh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;4.
&lt;span&gt;Accounts Receivable &lt;b&gt;&lt;span id="xdx_82A_zG5CuoRGhY5g" style="display: none"&gt;ACCOUNTS RECEIVABLE&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_893_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_zKbmmJlrLhFg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_zGEO4ZSBJohl"&gt;SCHEDULE OF ACCOUNTS RECEIVABLE&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_497_20211231_zVVUF86G12r6" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20201231_zAD8vqYveWMj" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--AccountsReceivableGross_i02I_pp0p0_maAANRNzCGO_zP6m6jwLhh8i" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Accounts receivable&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;7,403,308&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;6,161,249&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_i02NI_pp0p0_di_msAANRNzCGO_z6AUihP7p02e" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Allowances for doubtful accounts&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(273,979&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(271,436&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--AccountsAndNotesReceivableNet_i02TI_pp0p0_mtAANRNzCGO_zlrdv5AfO9Gi" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;7,129,329&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;5,889,813&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A6_zXda4wtCfTzb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:FinancingReceivablesTextBlock>
    <us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_893_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_zKbmmJlrLhFg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_zGEO4ZSBJohl"&gt;SCHEDULE OF ACCOUNTS RECEIVABLE&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_497_20211231_zVVUF86G12r6" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20201231_zAD8vqYveWMj" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--AccountsReceivableGross_i02I_pp0p0_maAANRNzCGO_zP6m6jwLhh8i" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Accounts receivable&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;7,403,308&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;6,161,249&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_i02NI_pp0p0_di_msAANRNzCGO_z6AUihP7p02e" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Allowances for doubtful accounts&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(273,979&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(271,436&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--AccountsAndNotesReceivableNet_i02TI_pp0p0_mtAANRNzCGO_zlrdv5AfO9Gi" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;7,129,329&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;5,889,813&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock>
    <us-gaap:AccountsReceivableGross contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7403308</us-gaap:AccountsReceivableGross>
    <us-gaap:AccountsReceivableGross contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">6161249</us-gaap:AccountsReceivableGross>
    <us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">273979</us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables>
    <us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">271436</us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables>
    <us-gaap:AccountsAndNotesReceivableNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7129329</us-gaap:AccountsAndNotesReceivableNet>
    <us-gaap:AccountsAndNotesReceivableNet contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">5889813</us-gaap:AccountsAndNotesReceivableNet>
    <us-gaap:InventoryDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_80E_eus-gaap--InventoryDisclosureTextBlock_zHuucQHW0dj3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;5.
&lt;span&gt;Inventories &lt;span id="xdx_826_zNS0FrCxPhK" style="display: none"&gt;INVENTORIES&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_892_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zE1zvLRMz1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BF_zn3wFWQpBjS1"&gt;SCHEDULE OF INVENTORIES&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20211231_z1QygdhdEd0a" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20201231_zKTPU8G0ztF7" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_z7kwJE3yLnN5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Completed goods&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;3,417,829&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;3,393,794&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--InventoryWorkInProcess_iI_pp0p0_maINzDiN_z5fX5WuBiQaa" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Work in progress&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0789"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;152,595&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_zjw3Jqeplpka" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Raw materials and supplies&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;6,084,176&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;4,826,087&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pp0p0_mtINzDiN_zCQYjA5oYjM2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total inventory&lt;/span&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;9,502,005&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;8,372,476&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A1_z7fbzG6KljI4" style="font: 10pt Times New Roman, Times, Serif; display: none; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_892_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zE1zvLRMz1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BF_zn3wFWQpBjS1"&gt;SCHEDULE OF INVENTORIES&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20211231_z1QygdhdEd0a" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20201231_zKTPU8G0ztF7" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_z7kwJE3yLnN5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Completed goods&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;3,417,829&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;3,393,794&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--InventoryWorkInProcess_iI_pp0p0_maINzDiN_z5fX5WuBiQaa" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Work in progress&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0789"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;152,595&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_zjw3Jqeplpka" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Raw materials and supplies&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;6,084,176&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;4,826,087&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pp0p0_mtINzDiN_zCQYjA5oYjM2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total inventory&lt;/span&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;9,502,005&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;8,372,476&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoods contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">3417829</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">3393794</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryWorkInProcess contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">152595</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryRawMaterialsAndSupplies contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">6084176</us-gaap:InventoryRawMaterialsAndSupplies>
    <us-gaap:InventoryRawMaterialsAndSupplies contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">4826087</us-gaap:InventoryRawMaterialsAndSupplies>
    <us-gaap:InventoryNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">9502005</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">8372476</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_80E_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_zFBAUaF1rbOg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;6.
&lt;span&gt;Property, Equipment and Leaseholds &lt;span style="font-variant: small-caps"&gt;&lt;span id="xdx_82A_zW5zVjxlF9Ic" style="display: none"&gt;PROPERTY, EQUIPMENT AND LEASEHOLDS&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_891_eus-gaap--PropertyPlantAndEquipmentTextBlock_zQf95OB29Tm1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BE_zsxJFHuZlLil"&gt;&#160;SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Cost&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Depreciation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; text-align: left"&gt;Buildings and improvements&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6IagJkkWm9g" style="width: 14%; text-align: right" title="Cost"&gt;4,823,708&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6OjoO26Hlh4" style="width: 14%; text-align: right" title="Accumulated Depreciation"&gt;2,983,589&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z3mjqj8tjmug" style="width: 14%; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,840,119&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Automobiles&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zQVdUD9JALMk" style="text-align: right" title="Cost"&gt;196,255&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zBd3jdxS1nYj" style="text-align: right" title="Accumulated Depreciation"&gt;71,258&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zRckIAqSFJCf" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;124,997&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Computer hardware&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zmgYMeTPqEqf" style="text-align: right" title="Cost"&gt;43,605&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zPEhHTvJpyj1" style="text-align: right" title="Accumulated Depreciation"&gt;42,456&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zK9HmOwOT2g" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,149&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Furniture and fixtures&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zvSHEQeZAS59" style="text-align: right" title="Cost"&gt;130,658&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zx2EFt0qBr4e" style="text-align: right" title="Accumulated Depreciation"&gt;106,101&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_z0rez7RsNyOc" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;24,557&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Office equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zVZhlKwdbxc" style="text-align: right" title="Cost"&gt;1,872&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zK3HxneSE3pd" style="text-align: right" title="Accumulated Depreciation"&gt;1,155&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ztskZy3WZ2Nc" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;717&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Manufacturing equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zYi4XmmSWXd6" style="text-align: right" title="Cost"&gt;6,867,799&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z9MVXMcxdK84" style="text-align: right" title="Accumulated Depreciation"&gt;4,171,699&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5dSPJOg1B07" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;2,696,100&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Trailer&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z5xSMZcBgqfc" style="text-align: right" title="Cost"&gt;9,463&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_znuuJ3b0wh2i" style="text-align: right" title="Accumulated Depreciation"&gt;7,532&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zEvR7mwu2hGa" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,931&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Boat&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z9O2MlnIF4Pg" style="text-align: right" title="Cost"&gt;34,400&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zD6wxgIt3Gqf" style="text-align: right" title="Accumulated Depreciation"&gt;26,284&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z4qRlMy50HQd" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;8,116&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Leasehold improvements&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zU4rxGL1Z372" style="text-align: right" title="Cost"&gt;88,872&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl8VjxDx7Lj3" style="text-align: right" title="Accumulated Depreciation"&gt;88,872&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zvkHbBzEjCT2" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0854"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Technology&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zONCi4vNHbl7" style="text-align: right" title="Cost"&gt;107,759&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zLO38p5X7nUi" style="text-align: right" title="Accumulated Depreciation"&gt;107,759&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zDaZB9A7whz4" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0860"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Land&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zzWsQk3HAr82" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;234,027&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zAUOpsFmZx5f" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0864"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zxcnFD2XuiCk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;234,027&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;12,538,418&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;7,606,705&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentNet_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;4,931,713&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Cost&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Depreciation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; text-align: left"&gt;Buildings and improvements&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z2xggdUxPDeh" style="width: 14%; text-align: right" title="Cost"&gt;4,798,370&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zo8xUD4jTwJe" style="width: 14%; text-align: right" title="Accumulated Depreciation"&gt;2,836,142&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zNtgRDDxMezh" style="width: 14%; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,962,228&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Automobiles&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zdiNLCfbyWbb" style="text-align: right" title="Cost"&gt;180,956&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zUpjUOkzKdC4" style="text-align: right" title="Accumulated Depreciation"&gt;61,266&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zvQGB6Ir6aG4" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;119,690&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Computer hardware&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zdZLtO6di8Kj" style="text-align: right" title="Cost"&gt;43,593&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zUnPMa1ngME5" style="text-align: right" title="Accumulated Depreciation"&gt;41,957&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zy2OmZiRKvLk" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,636&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Furniture and fixtures&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zwj9r7Oc7Wdj" style="text-align: right" title="Cost"&gt;111,145&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zmHqBqEifps2" style="text-align: right" title="Accumulated Depreciation"&gt;101,186&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zX4z5NxNUWr8" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;9,959&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Office equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zGplvNwQi9D5" style="text-align: right" title="Cost"&gt;1,864&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zNL0aOoPiWd8" style="text-align: right" title="Accumulated Depreciation"&gt;971&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zIjBL02ru4n6" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;893&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Manufacturing equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5vUCDmx9rr3" style="text-align: right" title="Cost"&gt;6,154,425&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_za1nGbSr0ark" style="text-align: right" title="Accumulated Depreciation"&gt;3,573,748&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zv48BQLN7kjc" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;2,580,677&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Trailer&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zJQj9SaHqVMi" style="text-align: right" title="Cost"&gt;9,422&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z33mqDH9afzl" style="text-align: right" title="Accumulated Depreciation"&gt;6,675&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zaJ9uGg4oSIg" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;2,747&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Boat&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zyGRlJFh5Z4b" style="text-align: right" title="Cost"&gt;34,400&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z1qymRSduX0f" style="text-align: right" title="Accumulated Depreciation"&gt;24,255&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zWMVB0Js2Jl" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;10,145&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Leasehold improvements&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl30RkG2bga7" style="text-align: right" title="Cost"&gt;88,872&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_ziGsCPADoXdj" style="text-align: right" title="Accumulated Depreciation"&gt;87,205&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zuGAiOKNUbTg" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,667&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Technology&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zYuTbx1QTWJh" style="text-align: right" title="Cost"&gt;107,295&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zshI1XyfkMj6" style="text-align: right" title="Accumulated Depreciation"&gt;107,295&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zT6a0EGpDXw7" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0932"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Land&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_ze1fLkmOpADe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;452,399&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zZ3jJkVGG89l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0936"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_z11ex2owSN05" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;452,399&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231_z87QSSWhFWn" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;11,982,741&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231_z2K9lJlKZjN4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;6,840,700&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231_zoy0Ntvw4Uc2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;5,142,041&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A6_zr6fWGJTWzOg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Amount
of depreciation expense for 2021: $&lt;span id="xdx_903_eus-gaap--Depreciation_pp0p0_c20210101__20211231_zzH8kidXiEmb" title="Depreciation"&gt;773,497&lt;/span&gt; (2020: $&lt;span id="xdx_905_eus-gaap--Depreciation_pp0p0_c20200101__20201231_z3BTW44AyOCe" title="Depreciation"&gt;659,233&lt;/span&gt;) and is included in cost of sales in the consolidated statements of income
and comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the year ended December 31, 2021, &lt;span id="xdx_909_eus-gaap--AreaOfLand_iI_usqft_c20210112_zCiINoHCl5Yj" title="Area of land"&gt;3.3&lt;/span&gt; acres of cleared and undeveloped land in Taber, AB Canada was disposed of for proceeds of $&lt;span id="xdx_909_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zIYOKH0si0O8"&gt;263,380&lt;/span&gt;
($&lt;span id="xdx_901_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zeZ32Tpyne6i"&gt;333,899&lt;/span&gt;CAD). With a cost of $&lt;span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zk3wCFQo6ns1" title="Cost"&gt;219,318&lt;/span&gt; ($&lt;span id="xdx_900_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_uCAD_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z8w8qCDq3YL5" title="Cost"&gt;278,040&lt;/span&gt;CAD) the Company recognized a gain of $&lt;span id="xdx_900_ecustom--GainOnInvestments_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z4rpbvCnd9s" title="Recognized gains"&gt;44,330&lt;/span&gt; ($&lt;span id="xdx_90D_ecustom--GainOnInvestments_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z3bKEZNqzoO7"&gt;55,859&lt;/span&gt;CAD) on the disposal. During the
year ended December 31, 2020, equipment with a cost of $&lt;span id="xdx_906_eus-gaap--PropertyPlantAndEquipmentGross_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_pp0p0" title="Cost"&gt;79,517&lt;/span&gt; and accumulated depreciation of $&lt;span id="xdx_909_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zPIK1xoqJnz4" title="Accumulated depreciation"&gt;64,218&lt;/span&gt; was disposed for proceeds of $&lt;span id="xdx_909_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_c20200101__20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_z4yAs4pLZ95k" title="Proceed for disposal"&gt;24,789&lt;/span&gt;.
The Company recognized a gain of $&lt;span id="xdx_903_eus-gaap--GainLossOnSaleOfPropertyPlantEquipment_pp0p0_c20200101__20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zQW3PmksIJj9" title="Gain on disposal"&gt;9,490&lt;/span&gt; on the disposal.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_891_eus-gaap--PropertyPlantAndEquipmentTextBlock_zQf95OB29Tm1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BE_zsxJFHuZlLil"&gt;&#160;SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Cost&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Depreciation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; text-align: left"&gt;Buildings and improvements&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6IagJkkWm9g" style="width: 14%; text-align: right" title="Cost"&gt;4,823,708&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z6OjoO26Hlh4" style="width: 14%; text-align: right" title="Accumulated Depreciation"&gt;2,983,589&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z3mjqj8tjmug" style="width: 14%; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,840,119&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Automobiles&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zQVdUD9JALMk" style="text-align: right" title="Cost"&gt;196,255&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zBd3jdxS1nYj" style="text-align: right" title="Accumulated Depreciation"&gt;71,258&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zRckIAqSFJCf" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;124,997&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Computer hardware&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zmgYMeTPqEqf" style="text-align: right" title="Cost"&gt;43,605&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zPEhHTvJpyj1" style="text-align: right" title="Accumulated Depreciation"&gt;42,456&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zK9HmOwOT2g" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,149&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Furniture and fixtures&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zvSHEQeZAS59" style="text-align: right" title="Cost"&gt;130,658&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zx2EFt0qBr4e" style="text-align: right" title="Accumulated Depreciation"&gt;106,101&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_z0rez7RsNyOc" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;24,557&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Office equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zVZhlKwdbxc" style="text-align: right" title="Cost"&gt;1,872&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zK3HxneSE3pd" style="text-align: right" title="Accumulated Depreciation"&gt;1,155&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_ztskZy3WZ2Nc" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;717&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Manufacturing equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zYi4XmmSWXd6" style="text-align: right" title="Cost"&gt;6,867,799&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z9MVXMcxdK84" style="text-align: right" title="Accumulated Depreciation"&gt;4,171,699&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5dSPJOg1B07" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;2,696,100&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Trailer&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z5xSMZcBgqfc" style="text-align: right" title="Cost"&gt;9,463&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_znuuJ3b0wh2i" style="text-align: right" title="Accumulated Depreciation"&gt;7,532&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zEvR7mwu2hGa" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,931&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Boat&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z9O2MlnIF4Pg" style="text-align: right" title="Cost"&gt;34,400&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zD6wxgIt3Gqf" style="text-align: right" title="Accumulated Depreciation"&gt;26,284&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z4qRlMy50HQd" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;8,116&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Leasehold improvements&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zU4rxGL1Z372" style="text-align: right" title="Cost"&gt;88,872&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl8VjxDx7Lj3" style="text-align: right" title="Accumulated Depreciation"&gt;88,872&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zvkHbBzEjCT2" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0854"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Technology&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zONCi4vNHbl7" style="text-align: right" title="Cost"&gt;107,759&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zLO38p5X7nUi" style="text-align: right" title="Accumulated Depreciation"&gt;107,759&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zDaZB9A7whz4" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0860"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Land&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zzWsQk3HAr82" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;234,027&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zAUOpsFmZx5f" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0864"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zxcnFD2XuiCk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;234,027&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;12,538,418&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;7,606,705&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentNet_c20211231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;4,931,713&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: center"&gt;2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Cost&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Depreciation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; text-align: left"&gt;Buildings and improvements&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_z2xggdUxPDeh" style="width: 14%; text-align: right" title="Cost"&gt;4,798,370&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zo8xUD4jTwJe" style="width: 14%; text-align: right" title="Accumulated Depreciation"&gt;2,836,142&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BuildingAndImprovementsMember_zNtgRDDxMezh" style="width: 14%; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,962,228&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Automobiles&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zdiNLCfbyWbb" style="text-align: right" title="Cost"&gt;180,956&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zUpjUOkzKdC4" style="text-align: right" title="Accumulated Depreciation"&gt;61,266&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zvQGB6Ir6aG4" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;119,690&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Computer hardware&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zdZLtO6di8Kj" style="text-align: right" title="Cost"&gt;43,593&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zUnPMa1ngME5" style="text-align: right" title="Accumulated Depreciation"&gt;41,957&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zy2OmZiRKvLk" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,636&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Furniture and fixtures&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zwj9r7Oc7Wdj" style="text-align: right" title="Cost"&gt;111,145&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zmHqBqEifps2" style="text-align: right" title="Accumulated Depreciation"&gt;101,186&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zX4z5NxNUWr8" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;9,959&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Office equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zGplvNwQi9D5" style="text-align: right" title="Cost"&gt;1,864&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zNL0aOoPiWd8" style="text-align: right" title="Accumulated Depreciation"&gt;971&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zIjBL02ru4n6" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;893&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Manufacturing equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z5vUCDmx9rr3" style="text-align: right" title="Cost"&gt;6,154,425&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_za1nGbSr0ark" style="text-align: right" title="Accumulated Depreciation"&gt;3,573,748&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zv48BQLN7kjc" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;2,580,677&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Trailer&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zJQj9SaHqVMi" style="text-align: right" title="Cost"&gt;9,422&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_z33mqDH9afzl" style="text-align: right" title="Accumulated Depreciation"&gt;6,675&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zaJ9uGg4oSIg" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;2,747&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Boat&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zyGRlJFh5Z4b" style="text-align: right" title="Cost"&gt;34,400&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_z1qymRSduX0f" style="text-align: right" title="Accumulated Depreciation"&gt;24,255&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zWMVB0Js2Jl" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;10,145&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Leasehold improvements&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zl30RkG2bga7" style="text-align: right" title="Cost"&gt;88,872&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_ziGsCPADoXdj" style="text-align: right" title="Accumulated Depreciation"&gt;87,205&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zuGAiOKNUbTg" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;1,667&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Technology&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zYuTbx1QTWJh" style="text-align: right" title="Cost"&gt;107,295&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zshI1XyfkMj6" style="text-align: right" title="Accumulated Depreciation"&gt;107,295&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zT6a0EGpDXw7" style="text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0932"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Land&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_ze1fLkmOpADe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;452,399&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zZ3jJkVGG89l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0936"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_z11ex2owSN05" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;452,399&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20201231_z87QSSWhFWn" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;11,982,741&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_pp0p0_c20201231_z2K9lJlKZjN4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;6,840,700&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20201231_zoy0Ntvw4Uc2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, Plant and Equipment, Net, Total"&gt;5,142,041&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_custom_BuildingAndImprovementsMember"
      decimals="0"
      unitRef="USD">4823708</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_custom_BuildingAndImprovementsMember"
      decimals="0"
      unitRef="USD">2983589</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_custom_BuildingAndImprovementsMember"
      decimals="0"
      unitRef="USD">1840119</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_AutomobilesMember"
      decimals="0"
      unitRef="USD">196255</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_AutomobilesMember"
      decimals="0"
      unitRef="USD">71258</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_AutomobilesMember"
      decimals="0"
      unitRef="USD">124997</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_ComputerEquipmentMember"
      decimals="0"
      unitRef="USD">43605</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_ComputerEquipmentMember"
      decimals="0"
      unitRef="USD">42456</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_ComputerEquipmentMember"
      decimals="0"
      unitRef="USD">1149</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_FurnitureAndFixturesMember"
      decimals="0"
      unitRef="USD">130658</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_FurnitureAndFixturesMember"
      decimals="0"
      unitRef="USD">106101</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_FurnitureAndFixturesMember"
      decimals="0"
      unitRef="USD">24557</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">1872</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">1155</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">717</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember"
      decimals="0"
      unitRef="USD">6867799</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember"
      decimals="0"
      unitRef="USD">4171699</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember"
      decimals="0"
      unitRef="USD">2696100</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_custom_TrailerMember"
      decimals="0"
      unitRef="USD">9463</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_custom_TrailerMember"
      decimals="0"
      unitRef="USD">7532</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_custom_TrailerMember"
      decimals="0"
      unitRef="USD">1931</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_custom_BoatMember"
      decimals="0"
      unitRef="USD">34400</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_custom_BoatMember"
      decimals="0"
      unitRef="USD">26284</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_custom_BoatMember"
      decimals="0"
      unitRef="USD">8116</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="0"
      unitRef="USD">88872</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="0"
      unitRef="USD">88872</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember"
      decimals="0"
      unitRef="USD">107759</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember"
      decimals="0"
      unitRef="USD">107759</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_LandMember"
      decimals="0"
      unitRef="USD">234027</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_LandMember"
      decimals="0"
      unitRef="USD">234027</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">12538418</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7606705</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">4931713</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_custom_BuildingAndImprovementsMember"
      decimals="0"
      unitRef="USD">4798370</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_custom_BuildingAndImprovementsMember"
      decimals="0"
      unitRef="USD">2836142</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_custom_BuildingAndImprovementsMember"
      decimals="0"
      unitRef="USD">1962228</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_us-gaap_AutomobilesMember"
      decimals="0"
      unitRef="USD">180956</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_AutomobilesMember"
      decimals="0"
      unitRef="USD">61266</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_us-gaap_AutomobilesMember"
      decimals="0"
      unitRef="USD">119690</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_us-gaap_ComputerEquipmentMember"
      decimals="0"
      unitRef="USD">43593</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_ComputerEquipmentMember"
      decimals="0"
      unitRef="USD">41957</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_us-gaap_ComputerEquipmentMember"
      decimals="0"
      unitRef="USD">1636</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_us-gaap_FurnitureAndFixturesMember"
      decimals="0"
      unitRef="USD">111145</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_FurnitureAndFixturesMember"
      decimals="0"
      unitRef="USD">101186</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_us-gaap_FurnitureAndFixturesMember"
      decimals="0"
      unitRef="USD">9959</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">1864</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">971</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">893</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_us-gaap_MachineryAndEquipmentMember"
      decimals="0"
      unitRef="USD">6154425</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_MachineryAndEquipmentMember"
      decimals="0"
      unitRef="USD">3573748</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_us-gaap_MachineryAndEquipmentMember"
      decimals="0"
      unitRef="USD">2580677</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_custom_TrailerMember"
      decimals="0"
      unitRef="USD">9422</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_custom_TrailerMember"
      decimals="0"
      unitRef="USD">6675</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_custom_TrailerMember"
      decimals="0"
      unitRef="USD">2747</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_custom_BoatMember"
      decimals="0"
      unitRef="USD">34400</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_custom_BoatMember"
      decimals="0"
      unitRef="USD">24255</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_custom_BoatMember"
      decimals="0"
      unitRef="USD">10145</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="0"
      unitRef="USD">88872</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="0"
      unitRef="USD">87205</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="0"
      unitRef="USD">1667</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_us-gaap_DevelopedTechnologyRightsMember"
      decimals="0"
      unitRef="USD">107295</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_DevelopedTechnologyRightsMember"
      decimals="0"
      unitRef="USD">107295</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_us-gaap_LandMember"
      decimals="0"
      unitRef="USD">452399</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2020-12-31_us-gaap_LandMember"
      decimals="0"
      unitRef="USD">452399</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">11982741</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">6840700</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">5142041</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">773497</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">659233</us-gaap:Depreciation>
    <us-gaap:AreaOfLand contextRef="AsOf2021-01-12" decimals="INF" unitRef="sqft">3.3</us-gaap:AreaOfLand>
    <us-gaap:ProceedsFromSaleOfMachineryAndEquipment
      contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">263380</us-gaap:ProceedsFromSaleOfMachineryAndEquipment>
    <us-gaap:ProceedsFromSaleOfMachineryAndEquipment
      contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="CAD">333899</us-gaap:ProceedsFromSaleOfMachineryAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">219318</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="CAD">278040</us-gaap:PropertyPlantAndEquipmentGross>
    <FSI:GainOnInvestments
      contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">44330</FSI:GainOnInvestments>
    <FSI:GainOnInvestments
      contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="CAD">55859</FSI:GainOnInvestments>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2020-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">79517</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">64218</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfMachineryAndEquipment
      contextRef="From2020-01-012020-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">24789</us-gaap:ProceedsFromSaleOfMachineryAndEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="From2020-01-012020-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">9490</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:IntangibleAssetsDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_803_eus-gaap--IntangibleAssetsDisclosureTextBlock_zj1C36xo4Dqe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;7.
&lt;span&gt;Patents &lt;b&gt;&lt;span id="xdx_82D_zi5nuLuxdArl" style="display: none"&gt;PATENTS&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_896_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zou6aUfzVBoe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BB_zDX8DZWv8Rt1" style="display: none"&gt;SCHEDULE OF PATENTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2021&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Cost&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Accumulated &lt;br/&gt; Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2021&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; padding-bottom: 1.5pt"&gt;Patents&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zgxPltbff797" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, Cost"&gt;208,079&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_z0UJKjUecFJc" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated Amortization"&gt;194,380&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zxzh9NVo05Pd" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net"&gt;13,699&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2020&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Cost&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Accumulated &lt;br/&gt; Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2020&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; padding-bottom: 1.5pt"&gt;Patents&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--FiniteLivedPatentsGross_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, Cost"&gt;208,211&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20201231_zZTlu66uBsV1" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated Amortization"&gt;178,074&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--FiniteLivedIntangibleAssetsNet_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net"&gt;30,137&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AB_zzwf0WzDHsxe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Decrease
in 2021 cost was due to currency conversion. 2021 cost in Canadian dollars - $&lt;span id="xdx_90D_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20211231__us-gaap--AwardTypeAxis__custom--CADMember_zg4ReEafwRo6" title="Increase in currency conversion"&gt;265,102&lt;/span&gt; (2020 - $&lt;span id="xdx_909_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20201231__us-gaap--AwardTypeAxis__custom--CADMember_zV3LwzRLUQrb" title="Increase in currency conversion"&gt;265,102&lt;/span&gt; in Canadian dollars).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Amount
of amortization for 2021: $&lt;span id="xdx_904_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231_zgjeWW15r9Qf" title="Amortization"&gt;16,438&lt;/span&gt; (2020 - $&lt;span id="xdx_906_eus-gaap--AmortizationOfIntangibleAssets_c20200101__20201231_pp0p0" title="Amortization"&gt;16,438&lt;/span&gt;) and is included in cost of sales in the consolidated statements of income and comprehensive
income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89F_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zg7OVd19fWO1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Estimated
amortization expense over the next five years is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_zY0f2ngYyaB4" style="display: none"&gt;SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231_zd2gvfDF81Fc" title="2022"&gt;13,699&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AC_zfrew5pQLar7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_896_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zou6aUfzVBoe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BB_zDX8DZWv8Rt1" style="display: none"&gt;SCHEDULE OF PATENTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2021&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Cost&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Accumulated &lt;br/&gt; Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2021&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; padding-bottom: 1.5pt"&gt;Patents&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zgxPltbff797" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, Cost"&gt;208,079&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_z0UJKjUecFJc" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated Amortization"&gt;194,380&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zxzh9NVo05Pd" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net"&gt;13,699&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2020&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Cost&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Accumulated &lt;br/&gt; Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2020&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; padding-bottom: 1.5pt"&gt;Patents&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--FiniteLivedPatentsGross_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, Cost"&gt;208,211&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20201231_zZTlu66uBsV1" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated Amortization"&gt;178,074&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; font-variant: small-caps; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; font-variant: small-caps; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--FiniteLivedIntangibleAssetsNet_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net"&gt;30,137&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; font-variant: small-caps; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedPatentsGross contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">208079</us-gaap:FiniteLivedPatentsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">194380</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">13699</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedPatentsGross contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">208211</us-gaap:FiniteLivedPatentsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">178074</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">30137</us-gaap:FiniteLivedIntangibleAssetsNet>
    <FSI:IncreaseInCurrencyConversion
      contextRef="AsOf2021-12-31_custom_CADMember"
      decimals="0"
      unitRef="CAD">265102</FSI:IncreaseInCurrencyConversion>
    <FSI:IncreaseInCurrencyConversion
      contextRef="AsOf2020-12-31_custom_CADMember"
      decimals="0"
      unitRef="CAD">265102</FSI:IncreaseInCurrencyConversion>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">16438</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">16438</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_89F_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zg7OVd19fWO1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Estimated
amortization expense over the next five years is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_zY0f2ngYyaB4" style="display: none"&gt;SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231_zd2gvfDF81Fc" title="2022"&gt;13,699&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">13699</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_802_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zflxDWbUSqa4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;8.
&lt;span style="font-variant: small-caps"&gt;&lt;span&gt;Goodwill and Intangible Assets &lt;b&gt;&lt;span id="xdx_827_zzHw76VrhbT" style="display: none"&gt;GOODWILL AND INTANGIBLE ASSETS&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_898_eus-gaap--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zjXsHyEPpKwl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_zE6ikT39usR4" style="display: none"&gt;SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Goodwill&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 82%; padding-bottom: 1.5pt"&gt;Balance as of December 31, 2020 and 2021&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"&gt;&lt;span&gt;&lt;span id="xdx_905_eus-gaap--Goodwill_iI_c20201231_zqDInxhtDvTk" title="Goodwill"&gt;&lt;span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zpczmAJ7ULed"&gt;2,534,275&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Indefinite Lived Intangible Assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance as of December 31, 2020 and 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span&gt;&lt;span id="xdx_90C_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_zRUJmRw2pR4b" title="Indefinite Lived Intangible Asset"&gt;&lt;span id="xdx_909_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20201231_z4Gysg2HBfDj"&gt;770,000&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Goodwill
relates to the acquisition of ENP Investments. Indefinite lived intangible assets consist of trade secrets and trademarks related to
the acquisition of ENP Investments.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Definite Life Intangible Assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 82%"&gt;Balance as of December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zqnzOKzCdel" style="width: 14%; text-align: right" title="Beginning balance"&gt;2,182,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zL89yHsrhSD3" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization"&gt;(176,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance as of December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zT63YCXPM2F6" style="text-align: right" title="Beginning balance"&gt;2,006,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zm7BrKwivm23" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization"&gt;(176,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balances as of December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsNet_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_z7DeKkhzIHPe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Ending balance"&gt;1,830,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


&lt;p id="xdx_8A9_zoRl6QXTlhU1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Definite
life intangible assets consist of customer relationships and software related to the acquisition of ENP Investments. Customer relationships
and software are amortized over their estimated useful life of &lt;span id="xdx_903_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--CustomerRelationshipsMember_zPamdrHmpXp1" title="Estimated useful life"&gt;15&lt;/span&gt; years and &lt;span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--ComputerSoftwareIntangibleAssetMember_z5DLDXqlAdb2" title="Estimated useful life"&gt;3&lt;/span&gt; years, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_897_ecustom--ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock_zt5FJmuBpXC" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Estimated
amortization expense over the next five years is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_zR9Q8YPXhWmh" style="display: none"&gt;SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_900_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zuDLg7ZNAJYk" title="2022"&gt;160,000&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2023&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zYJoY8bbWood" style="text-align: right" title="2023"&gt;160,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zH6nAo29pVZe" style="text-align: right" title="2024"&gt;160,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2025&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zAVlxw356sJ8" style="text-align: right" title="2025"&gt;160,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zkJorWHpqWP1" style="border-bottom: Black 1.5pt solid; text-align: right" title="2026"&gt;160,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A9_zWaWeKH6m1Ke" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_898_eus-gaap--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zjXsHyEPpKwl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_zE6ikT39usR4" style="display: none"&gt;SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Goodwill&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 82%; padding-bottom: 1.5pt"&gt;Balance as of December 31, 2020 and 2021&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"&gt;&lt;span&gt;&lt;span id="xdx_905_eus-gaap--Goodwill_iI_c20201231_zqDInxhtDvTk" title="Goodwill"&gt;&lt;span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zpczmAJ7ULed"&gt;2,534,275&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Indefinite Lived Intangible Assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance as of December 31, 2020 and 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span&gt;&lt;span id="xdx_90C_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_zRUJmRw2pR4b" title="Indefinite Lived Intangible Asset"&gt;&lt;span id="xdx_909_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20201231_z4Gysg2HBfDj"&gt;770,000&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Goodwill
relates to the acquisition of ENP Investments. Indefinite lived intangible assets consist of trade secrets and trademarks related to
the acquisition of ENP Investments.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Definite Life Intangible Assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 82%"&gt;Balance as of December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zqnzOKzCdel" style="width: 14%; text-align: right" title="Beginning balance"&gt;2,182,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zL89yHsrhSD3" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization"&gt;(176,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance as of December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zT63YCXPM2F6" style="text-align: right" title="Beginning balance"&gt;2,006,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zm7BrKwivm23" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization"&gt;(176,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balances as of December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsNet_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_z7DeKkhzIHPe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Ending balance"&gt;1,830,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


</us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock>
    <us-gaap:Goodwill contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">2534275</us-gaap:Goodwill>
    <us-gaap:Goodwill contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2534275</us-gaap:Goodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">770000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">770000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2019-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">2182000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2020-01-012020-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">-176000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2020-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">2006000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2021-01-012021-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">-176000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2021-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">1830000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_CustomerRelationshipsMember">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_ComputerSoftwareIntangibleAssetMember">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <FSI:ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_897_ecustom--ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock_zt5FJmuBpXC" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Estimated
amortization expense over the next five years is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_zR9Q8YPXhWmh" style="display: none"&gt;SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_900_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zuDLg7ZNAJYk" title="2022"&gt;160,000&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2023&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zYJoY8bbWood" style="text-align: right" title="2023"&gt;160,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zH6nAo29pVZe" style="text-align: right" title="2024"&gt;160,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2025&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zAVlxw356sJ8" style="text-align: right" title="2025"&gt;160,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20211231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zkJorWHpqWP1" style="border-bottom: Black 1.5pt solid; text-align: right" title="2026"&gt;160,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</FSI:ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <FSI:LongTermDepositsTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_80D_ecustom--LongTermDepositsTextBlock_zq1yQeUBivc1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;9.
&lt;span style="font-variant: small-caps"&gt;&lt;span&gt;Long Term Deposits &lt;b&gt;&lt;span id="xdx_82C_zwPZEztgB3yf" style="display: none"&gt;LONG TERM DEPOSITS&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_892_ecustom--ScheduleOfLongTermDepositsTableTextBlock_z2LfUcfvuOs7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has security deposits that are long term in nature which consist of damage deposits held by landlords and security deposits held
by various vendors.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zSLcqLr61Cb3" style="display: none"&gt;SCHEDULE OF LONG TERM DEPOSITS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_496_20211231_z5wQyUodyJKj" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_493_20201231_zXANx59fZjyh" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Long term deposits&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;8,540&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;8,540&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AB_zbZPdYjx7Amh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</FSI:LongTermDepositsTextBlock>
    <FSI:ScheduleOfLongTermDepositsTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_892_ecustom--ScheduleOfLongTermDepositsTableTextBlock_z2LfUcfvuOs7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has security deposits that are long term in nature which consist of damage deposits held by landlords and security deposits held
by various vendors.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zSLcqLr61Cb3" style="display: none"&gt;SCHEDULE OF LONG TERM DEPOSITS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_496_20211231_z5wQyUodyJKj" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_493_20201231_zXANx59fZjyh" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Long term deposits&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;8,540&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;8,540&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</FSI:ScheduleOfLongTermDepositsTableTextBlock>
    <us-gaap:DepositsAssetsNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">8540</us-gaap:DepositsAssetsNoncurrent>
    <us-gaap:DepositsAssetsNoncurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">8540</us-gaap:DepositsAssetsNoncurrent>
    <us-gaap:EquityMethodInvestmentsDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_809_eus-gaap--EquityMethodInvestmentsDisclosureTextBlock_zv9UrlFNJfJ8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;10.
&lt;span&gt;Investments &lt;b&gt;&lt;span id="xdx_82C_zdcxzt7bihBc" style="display: none"&gt;INVESTMENTS&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;a&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The Company has a &lt;span id="xdx_901_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zh71GJVpd1q9" title="Ownership interest"&gt;50&lt;/span&gt;% ownership interest
in ENP Peru Investments LLC (&#x201c;ENP Peru&#x201d;). ENP Peru is located in Illinois and leases warehouse space. The Company accounts
for this investment using the equity method of accounting. A summary of the Company&#x2019;s investment follows:&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_893_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zZYejtMnCpQ1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B2_zdTJRDriP3R9" style="display: none"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_906_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zyh4tunHg0y" title="Balance, Beginning"&gt;11,387&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Return of equity&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zg6SlDLvHNEg" style="text-align: right" title="Return of equity"&gt;(9,063&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gain in equity method investment&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain (loss) in equity method investment"&gt;1,498&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zWbbRXiJmLMk" style="text-align: right" title="Balance, Beginning"&gt;3,822&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Return of equity&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuKru1CWLF22" style="text-align: right" title="Return of equity"&gt;(3,822&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gain in equity method investment&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zifu3hVCdww" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain (loss) in equity method investment"&gt;22,642&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zb9s0kzoim3" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"&gt;22,642&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AA_z1PEhRsE8Y29" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the year ended December 31, 2021, the Company received an additional $&lt;span id="xdx_901_eus-gaap--ProceedsFromContributionsFromAffiliates_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z70o4H9kofig" title="Proceeds from investment"&gt;30,478&lt;/span&gt; from ENP Peru. At the time of receipt of the payment, the
investment balance was $nil and the payment was not recorded against the investment balance but was included in gains on investments.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_890_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zEJTiTqkdV5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Summarized
profit and loss information for ENP Peru is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B2_z1eFrklZK1b3" style="display: none"&gt;SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Net sales&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z4EWTd49a26g" style="width: 14%; text-align: right" title="Net sales"&gt;322,079&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="width: 14%; text-align: right" title="Net sales"&gt;295,800&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Net income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuCNYZhxETki" style="text-align: right" title="Net income"&gt;45,285&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="text-align: right" title="Net income"&gt;2,996&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AE_z2KpwiD1bkyd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;b&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During the year ended December 31, 2018,
ENP Investments acquired a &lt;span id="xdx_90E_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20181231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zKYTVXlXyfIc" title="Ownership interest"&gt;24&lt;/span&gt;% ownership interest in ENP Realty LLC (&#x201c;ENP Realty&#x201d;). ENP Realty is located in Illinois and
leases warehouse space. During the year ended December 31, 2020, the other partners of ENP Realty withdrew from the partnership, resulting
in ENP Realty becoming a wholly owned subsidiary of ENP Investments. As a result, ENP Realty is consolidated in the financial statements
of the Company and a &lt;span id="xdx_90E_eus-gaap--MinorityInterestOwnershipPercentageByNoncontrollingOwners_iI_pid_dp_uPure_c20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember_zDfhCAbBqndj" title="Non-controlling interests"&gt;35&lt;/span&gt;% non-controlling interest is recognized from the acquisition date onwards.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;It
was determined that ENP Realty did not meet the definition of a business in accordance with FASB Codification Topic 805, Business Combinations
(ASC 805)&lt;i&gt;, &lt;/i&gt;and the acquisition was accounted for as an asset acquisition. The following table summarizes the final purchase price
allocation of the consideration paid to the respective fair values of the assets acquired and liabilities assumed in ENP Realty as of
the acquisition date.&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89F_ecustom--ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_z0wMTUSS81xj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span&gt;&lt;span&gt;&lt;span id="xdx_8B0_zUVZRvearMva" style="display: none"&gt;SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: left; padding-bottom: 1.5pt"&gt;Investment eliminated upon consolidation&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"&gt;&lt;span id="xdx_907_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20210101__20211231_zbg0Kp2l6Mf9" title="Investment eliminated upon consolidation"&gt;63,165&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Assets acquired:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Cash&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pp0p0_c20211231_zhOVv8AutEWc" style="text-align: right" title="Assets acquired: Cash"&gt;13,419&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Building&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iI_pp0p0_c20211231_zznfX3IvKHag" style="text-align: right" title="Assets acquired:Building"&gt;630,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Land&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iI_pp0p0_c20211231_zlTTI6reeuO4" style="text-align: right" title="Assets acquired: Land"&gt;85,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Liabilities assumed:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Accounts payable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pp0p0_di_c20211231_zCrjSk8UrOZf" style="text-align: right" title="Liabilities assumed: Accounts payable"&gt;(15,797&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Long term debt&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt_iNI_pp0p0_di_c20211231_z2LD5YNSJJVe" style="text-align: right" title="Liabilities assumed: Long term debt"&gt;(450,000&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Deferred income tax liability&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_pp0p0_di_c20211231_zsBoS6DdJ1dj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Liabilities assumed: Deferred income tax liability"&gt;(66,116&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Total identifiable net assets:&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_pp0p0_c20211231_zzKg3bxfGErb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total identifiable net assets:"&gt;196,506&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gain on acquisition of ENP Realty&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_ecustom--GainOnAcquisitionOfEnpRealty_pp0p0_c20210101__20211231_zHDSnMRDPZSc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain on acquisition of ENP Realty"&gt;133,341&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AA_zNLmVO3NIBzg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
income tax expense arising from the deferred income tax liability is net against gain on acquisition of ENP Realty in the consolidated
statements of income and comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89D_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_zemTOk4wjwI2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;A
summary of the Company&#x2019;s investment follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span&gt;&lt;span id="xdx_8B1_zxdrOPvF7Pwc" style="display: none"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_90C_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zoeW8coVmUL1" title="Balance, Beginning"&gt;63,165&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Investment eliminated upon consolidation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zOhwWHdTR0r5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Investment eliminated upon consolidation"&gt;(63,165&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance, December 31, 2020 and 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span id="xdx_90E_eus-gaap--EquityMethodInvestments_iE_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zZYLYHPEyJ2" title="Balance, Ending"&gt;&lt;span id="xdx_90D_eus-gaap--EquityMethodInvestments_iE_c20210101__20211231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_ztyP2cPxE9x2" title="Balance, Ending"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1102"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1104"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A1_ztcpb3CVpCdb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;c&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In December 2018 the Company invested $&lt;span id="xdx_90D_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_pp0p0" title="Investment"&gt;200,000&lt;/span&gt;
in Applied Holding Corp. (&#x201c;Applied&#x201d;). Applied is a captive insurance company and the Company received a non-convertible promissory
note for its investment which becomes due in &lt;span id="xdx_909_eus-gaap--DebtConversionConvertedInstrumentExpirationOrDueDateYear_c20181201__20181231__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_zAV3R6Wns4O9" title="Debt conversion due date"&gt;2021&lt;/span&gt; but may be extended with notice for a maximum of &lt;span id="xdx_901_eus-gaap--DebtInstrumentTerm_dc_c20181201__20181231__srt--RangeAxis__srt--MaximumMember__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_zHa8vFs4Tp08" title="Debt Instrument, Term"&gt;two years&lt;/span&gt;. In accordance with FASB
Codification Topic 320, &lt;i&gt;Investments &#x2013; Debt Securities&lt;/i&gt; (ASC 320), the Company has elected to account for this investment
at cost. During the year ended December 31, 2021, the Company entered an agreement with Applied to extend the maturity date of this promissory
note to December 6, 2023.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;d&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In December 2018 the Company invested $&lt;span id="xdx_909_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_pp0p0" title="Investment"&gt;500,000&lt;/span&gt;
in Trio Opportunity Corp. (&#x201c;Trio&#x201d;), a privately held entity. Trio is a real estate investment vehicle and the Company received
&lt;span id="xdx_907_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20181201__20181231__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_z842Q9hJQfki" title="Non-voting shares"&gt;50,000&lt;/span&gt; non-voting Class B shares at $&lt;span id="xdx_90C_eus-gaap--SharePrice_iI_pid_c20181231__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember_zla8cTHUPr2g" title="Share price"&gt;10.00&lt;/span&gt;/share. In accordance with FASB Codification Topic 321, &lt;i&gt;Investments &#x2013; Equity Securities
(&lt;/i&gt;ASC 321), the Company has elected to account for this investment at cost.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(e&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/b&gt;In January 2019, the Company invested $&lt;span id="xdx_904_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20190101__20190131__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" title="Investment"&gt;1,001,000&lt;/span&gt; in a Florida based LLC that is engaged in international sales of fertilizer
additives. The Company accounts for this investment using the equity method of accounting. According to the operating agreement, the
Company has a &lt;span id="xdx_906_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20190131__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zrwGPcF01714" title="Ownership interest"&gt;50&lt;/span&gt;% interest in the profit and loss of the Florida based LLC but does not have control. &lt;span style="background-color: white"&gt;A
summary of the Company&#x2019;s investment follows:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zjQX0cNnXGD" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_zXj8rYv2FEnj" style="display: none"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_903_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zTuO79otRgA8" title="Balance, Beginning"&gt;1,141,033&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Additional payments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--AdditionalPayment_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Additional payment"&gt;2,518,684&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Gain in equity method investment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqvP8dT6B6C9" style="text-align: right" title="Gain in equity method investment"&gt;809,342&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Return of equity&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_ecustom--EquityMethodInvestmentReturnOfEquity_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity"&gt;(896,714&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zoihULlgbo8g" style="text-align: right" title="Balance, Beginning"&gt;3,572,345&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Gain in equity method investment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1FaUcXX8EQ5" style="text-align: right" title="Gain in equity method investment"&gt;454,023&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Return of equity&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zAj22AtBd1x1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity"&gt;(325,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zolSGiKsRZfj" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"&gt;3,701,368&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AF_zKPyIielNJeh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Further
to the original investment amount, the Company had placed $&lt;span id="xdx_904_eus-gaap--RestrictedCashNoncurrent_iI_pp0p0_c20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zsSg9PhxeDFl" title="Restricted cash, released upon reaching milestone"&gt;1,000,000&lt;/span&gt; in trust, which was released during the year ended December 31,
2020 upon the Florida based LLC reaching a milestone related to earnings before interest, taxes and depreciation (&#x201c;EBITDA&#x201d;)
targets. The additional payments of $&lt;span id="xdx_903_eus-gaap--AssetAcquisitionConsiderationTransferredContingentConsideration_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zm26x62uld94" title="Contigent consideration of additional payment"&gt;2,518,684&lt;/span&gt; made during the year ended December 31, 2020 related to contingent consideration which
was dependent on the Florida based LLC meeting certain performance millstones during the year. Summarized profit and loss information
related to the equity accounted investment is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89C_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8cnNEy23dV4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zgvVrMUUqwzl" style="display: none"&gt;SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Net sales&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zU0XZFKBlZ98" style="width: 14%; text-align: right" title="Net sales"&gt;11,543,277&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="width: 14%; text-align: right" title="Net sales"&gt;12,138,511&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Gross profit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--RealizedInvestmentGainsLosses_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z3C5zeqFyTA6" style="text-align: right" title="Gross profit"&gt;3,517,387&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--RealizedInvestmentGainsLosses_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Gross profit"&gt;4,688,654&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Net income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1VYMQW7W6S3" style="text-align: right" title="Net income"&gt;908,045&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Net income"&gt;1,618,685&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AD_zgxHwQ73uRpj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the year ended December 31, 2021, the Company had sales of $&lt;span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zU35bATX7KP4" title="Revenue"&gt;7,982,281&lt;/span&gt; (2020 - $&lt;span id="xdx_90D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1dfp7t1XK3i" title="Revenue"&gt;7,476,047&lt;/span&gt;) to the Florida Based LLC, of which $&lt;span id="xdx_90E_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zlb9TzRoYdi2" title="Accounts Receivable"&gt;2,202,345&lt;/span&gt;
is included within Accounts Receivable as at December 31, 2021 (2020 - $&lt;span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zg0P4A4ufDx6" title="Accounts Receivable"&gt;1,593,272&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(f)
&lt;/b&gt;In December 2020, the Company invested $&lt;span id="xdx_90F_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20201201__20201231__dei--LegalEntityAxis__custom--LygosIncMember_pp0p0" title="Investment"&gt;500,000&lt;/span&gt; in Lygos Inc., a privately held entity, under a Simple Agreement for Future Equity
agreement. Both companies &lt;span style="background-color: white"&gt;intend to work together in pursuit of sustainable aspartic acid through
synthetic biology&lt;span style="font-variant: small-caps"&gt;.&lt;/span&gt;&lt;/span&gt; &lt;span style="font-variant: small-caps"&gt;T&lt;/span&gt;he Company has
elected to account for this investment at cost. A summary of the Company&#x2019;s investment follows:&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89B_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--LygosIncMember_zPBmG5oMNeUb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B9_zGaeSay6wX36" style="display: none"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span id="xdx_90D_eus-gaap--EquityMethodInvestments_iS_pdp0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zVTNpSLrGV3g" title="Balance, Beginning"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1170"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 82%; padding-bottom: 1.5pt"&gt;Acquisition&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--AcquisitionCosts_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zhuXJr3UhhUc" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Acquisition"&gt;500,000&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--EquityMethodInvestments_iS_pdp0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zUYgjZ9sOb78" style="text-align: right" title="Balance, Beginning"&gt;500,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Additional payment&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--AdditionalPayment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zICLbseBTTfi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Additional payment"&gt;500,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zXIa7z3v9El5" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"&gt;1,000,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


&lt;p id="xdx_8AD_zhkteg4m8Fwg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:EquityMethodInvestmentsDisclosureTextBlock>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2021-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.50</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:EquityMethodInvestmentsTextBlock contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember">&lt;p id="xdx_893_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zZYejtMnCpQ1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B2_zdTJRDriP3R9" style="display: none"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_906_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zyh4tunHg0y" title="Balance, Beginning"&gt;11,387&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Return of equity&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zg6SlDLvHNEg" style="text-align: right" title="Return of equity"&gt;(9,063&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gain in equity method investment&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain (loss) in equity method investment"&gt;1,498&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zWbbRXiJmLMk" style="text-align: right" title="Balance, Beginning"&gt;3,822&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Return of equity&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuKru1CWLF22" style="text-align: right" title="Return of equity"&gt;(3,822&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gain in equity method investment&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zifu3hVCdww" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain (loss) in equity method investment"&gt;22,642&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zb9s0kzoim3" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"&gt;22,642&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:EquityMethodInvestmentsTextBlock>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2019-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">11387</us-gaap:EquityMethodInvestments>
    <FSI:EquityMethodInvestmentReturnOfEquity
      contextRef="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">-9063</FSI:EquityMethodInvestmentReturnOfEquity>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal
      contextRef="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">1498</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2020-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">3822</us-gaap:EquityMethodInvestments>
    <FSI:EquityMethodInvestmentReturnOfEquity
      contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">-3822</FSI:EquityMethodInvestmentReturnOfEquity>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal
      contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">22642</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2021-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">22642</us-gaap:EquityMethodInvestments>
    <us-gaap:ProceedsFromContributionsFromAffiliates
      contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">30478</us-gaap:ProceedsFromContributionsFromAffiliates>
    <us-gaap:GainLossOnInvestmentsTextBlock contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember">&lt;p id="xdx_890_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zEJTiTqkdV5b" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Summarized
profit and loss information for ENP Peru is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B2_z1eFrklZK1b3" style="display: none"&gt;SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 70%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Net sales&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z4EWTd49a26g" style="width: 14%; text-align: right" title="Net sales"&gt;322,079&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="width: 14%; text-align: right" title="Net sales"&gt;295,800&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Net income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zuCNYZhxETki" style="text-align: right" title="Net income"&gt;45,285&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" style="text-align: right" title="Net income"&gt;2,996&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:GainLossOnInvestmentsTextBlock>
    <us-gaap:GainsLossesOnSalesOfInvestmentRealEstate
      contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">322079</us-gaap:GainsLossesOnSalesOfInvestmentRealEstate>
    <us-gaap:GainsLossesOnSalesOfInvestmentRealEstate
      contextRef="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">295800</us-gaap:GainsLossesOnSalesOfInvestmentRealEstate>
    <FSI:RealizedInvestmentGainsLossesNet
      contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">45285</FSI:RealizedInvestmentGainsLossesNet>
    <FSI:RealizedInvestmentGainsLossesNet
      contextRef="From2020-01-012020-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">2996</FSI:RealizedInvestmentGainsLossesNet>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2018-12-31_custom_EnpRealtyLLCMember"
      decimals="INF"
      unitRef="Pure">0.24</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners
      contextRef="AsOf2020-12-31_custom_EnpRealtyLLCMember"
      decimals="INF"
      unitRef="Pure">0.35</us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners>
    <FSI:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock contextRef="From2021-01-012021-12-31_custom_EnpRealtyLLCMember">&lt;p id="xdx_89F_ecustom--ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_z0wMTUSS81xj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span&gt;&lt;span&gt;&lt;span id="xdx_8B0_zUVZRvearMva" style="display: none"&gt;SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: left; padding-bottom: 1.5pt"&gt;Investment eliminated upon consolidation&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"&gt;&lt;span id="xdx_907_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20210101__20211231_zbg0Kp2l6Mf9" title="Investment eliminated upon consolidation"&gt;63,165&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Assets acquired:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Cash&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pp0p0_c20211231_zhOVv8AutEWc" style="text-align: right" title="Assets acquired: Cash"&gt;13,419&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Building&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iI_pp0p0_c20211231_zznfX3IvKHag" style="text-align: right" title="Assets acquired:Building"&gt;630,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Land&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iI_pp0p0_c20211231_zlTTI6reeuO4" style="text-align: right" title="Assets acquired: Land"&gt;85,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Liabilities assumed:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Accounts payable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pp0p0_di_c20211231_zCrjSk8UrOZf" style="text-align: right" title="Liabilities assumed: Accounts payable"&gt;(15,797&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Long term debt&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt_iNI_pp0p0_di_c20211231_z2LD5YNSJJVe" style="text-align: right" title="Liabilities assumed: Long term debt"&gt;(450,000&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Deferred income tax liability&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_pp0p0_di_c20211231_zsBoS6DdJ1dj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Liabilities assumed: Deferred income tax liability"&gt;(66,116&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Total identifiable net assets:&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_pp0p0_c20211231_zzKg3bxfGErb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total identifiable net assets:"&gt;196,506&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gain on acquisition of ENP Realty&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_ecustom--GainOnAcquisitionOfEnpRealty_pp0p0_c20210101__20211231_zHDSnMRDPZSc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain on acquisition of ENP Realty"&gt;133,341&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</FSI:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock>
    <FSI:InvestmentEliminatedUponConsolidation
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">63165</FSI:InvestmentEliminatedUponConsolidation>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">13419</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">630000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">85000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">15797</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">450000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">66116</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">196506</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <FSI:GainOnAcquisitionOfEnpRealty
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">133341</FSI:GainOnAcquisitionOfEnpRealty>
    <us-gaap:EquityMethodInvestmentsTextBlock contextRef="From2021-01-012021-12-31_custom_EnpRealtyLLCMember">&lt;p id="xdx_89D_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpRealtyLLCMember_zemTOk4wjwI2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;A
summary of the Company&#x2019;s investment follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span&gt;&lt;span id="xdx_8B1_zxdrOPvF7Pwc" style="display: none"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_90C_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zoeW8coVmUL1" title="Balance, Beginning"&gt;63,165&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Investment eliminated upon consolidation&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_ecustom--InvestmentEliminatedUponConsolidation_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zOhwWHdTR0r5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Investment eliminated upon consolidation"&gt;(63,165&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance, December 31, 2020 and 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span id="xdx_90E_eus-gaap--EquityMethodInvestments_iE_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zZYLYHPEyJ2" title="Balance, Ending"&gt;&lt;span id="xdx_90D_eus-gaap--EquityMethodInvestments_iE_c20210101__20211231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_ztyP2cPxE9x2" title="Balance, Ending"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1102"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1104"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:EquityMethodInvestmentsTextBlock>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2019-12-31_custom_EnpRealtyLLCMember"
      decimals="0"
      unitRef="USD">63165</us-gaap:EquityMethodInvestments>
    <FSI:InvestmentEliminatedUponConsolidation
      contextRef="From2020-01-012020-12-31_custom_EnpRealtyLLCMember"
      decimals="0"
      unitRef="USD">-63165</FSI:InvestmentEliminatedUponConsolidation>
    <us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease
      contextRef="From2018-12-012018-12-31_custom_AppliedHoldingCorpMember"
      decimals="0"
      unitRef="USD">200000</us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease>
    <us-gaap:DebtConversionConvertedInstrumentExpirationOrDueDateYear contextRef="From2018-12-012018-12-31_custom_AppliedHoldingCorpMember">2021</us-gaap:DebtConversionConvertedInstrumentExpirationOrDueDateYear>
    <us-gaap:DebtInstrumentTerm contextRef="From2018-12-012018-12-31_srt_MaximumMember_custom_AppliedHoldingCorpMember">P2Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease
      contextRef="From2018-12-012018-12-31_custom_TrioOpportunityCorpMember"
      decimals="0"
      unitRef="USD">500000</us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="From2018-12-012018-12-31_us-gaap_CommonClassBMember_custom_TrioOpportunityCorpMember"
      decimals="INF"
      unitRef="Shares">50000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:SharePrice
      contextRef="AsOf2018-12-31_custom_TrioOpportunityCorpMember_us-gaap_CommonClassBMember"
      decimals="INF"
      unitRef="USDPShares">10.00</us-gaap:SharePrice>
    <us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease
      contextRef="From2019-01-012019-01-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">1001000</us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2019-01-31_custom_FloridaBasedLLCMember"
      decimals="INF"
      unitRef="Pure">0.50</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:EquityMethodInvestmentsTextBlock contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember">&lt;p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zjQX0cNnXGD" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_zXj8rYv2FEnj" style="display: none"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_903_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zTuO79otRgA8" title="Balance, Beginning"&gt;1,141,033&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Additional payments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--AdditionalPayment_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Additional payment"&gt;2,518,684&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Gain in equity method investment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqvP8dT6B6C9" style="text-align: right" title="Gain in equity method investment"&gt;809,342&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Return of equity&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_ecustom--EquityMethodInvestmentReturnOfEquity_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity"&gt;(896,714&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zoihULlgbo8g" style="text-align: right" title="Balance, Beginning"&gt;3,572,345&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Gain in equity method investment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1FaUcXX8EQ5" style="text-align: right" title="Gain in equity method investment"&gt;454,023&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Return of equity&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zAj22AtBd1x1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity"&gt;(325,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zolSGiKsRZfj" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"&gt;3,701,368&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:EquityMethodInvestmentsTextBlock>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2019-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">1141033</us-gaap:EquityMethodInvestments>
    <FSI:AdditionalPayment
      contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">2518684</FSI:AdditionalPayment>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal
      contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">809342</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <FSI:EquityMethodInvestmentReturnOfEquity
      contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">-896714</FSI:EquityMethodInvestmentReturnOfEquity>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">3572345</us-gaap:EquityMethodInvestments>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">454023</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <FSI:EquityMethodInvestmentReturnOfEquity
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">-325000</FSI:EquityMethodInvestmentReturnOfEquity>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">3701368</us-gaap:EquityMethodInvestments>
    <us-gaap:RestrictedCashNoncurrent
      contextRef="AsOf2020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">1000000</us-gaap:RestrictedCashNoncurrent>
    <us-gaap:AssetAcquisitionConsiderationTransferredContingentConsideration
      contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">2518684</us-gaap:AssetAcquisitionConsiderationTransferredContingentConsideration>
    <us-gaap:GainLossOnInvestmentsTextBlock contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember">&lt;p id="xdx_89C_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8cnNEy23dV4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zgvVrMUUqwzl" style="display: none"&gt;SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Net sales&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zU0XZFKBlZ98" style="width: 14%; text-align: right" title="Net sales"&gt;11,543,277&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="width: 14%; text-align: right" title="Net sales"&gt;12,138,511&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Gross profit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--RealizedInvestmentGainsLosses_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z3C5zeqFyTA6" style="text-align: right" title="Gross profit"&gt;3,517,387&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--RealizedInvestmentGainsLosses_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Gross profit"&gt;4,688,654&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Net income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_ecustom--RealizedInvestmentGainsLossesNet_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z1VYMQW7W6S3" style="text-align: right" title="Net income"&gt;908,045&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_ecustom--RealizedInvestmentGainsLossesNet_c20200101__20201231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_pp0p0" style="text-align: right" title="Net income"&gt;1,618,685&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:GainLossOnInvestmentsTextBlock>
    <us-gaap:GainsLossesOnSalesOfInvestmentRealEstate
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">11543277</us-gaap:GainsLossesOnSalesOfInvestmentRealEstate>
    <us-gaap:GainsLossesOnSalesOfInvestmentRealEstate
      contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">12138511</us-gaap:GainsLossesOnSalesOfInvestmentRealEstate>
    <us-gaap:RealizedInvestmentGainsLosses
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">3517387</us-gaap:RealizedInvestmentGainsLosses>
    <us-gaap:RealizedInvestmentGainsLosses
      contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">4688654</us-gaap:RealizedInvestmentGainsLosses>
    <FSI:RealizedInvestmentGainsLossesNet
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">908045</FSI:RealizedInvestmentGainsLossesNet>
    <FSI:RealizedInvestmentGainsLossesNet
      contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">1618685</FSI:RealizedInvestmentGainsLossesNet>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">7982281</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2020-01-012020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">7476047</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">2202345</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">1593272</us-gaap:AccountsReceivableNet>
    <us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease
      contextRef="From2020-12-012020-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">500000</us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease>
    <us-gaap:EquityMethodInvestmentsTextBlock contextRef="From2021-01-012021-12-31_custom_LygosIncMember">&lt;p id="xdx_89B_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--LygosIncMember_zPBmG5oMNeUb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B9_zGaeSay6wX36" style="display: none"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span id="xdx_90D_eus-gaap--EquityMethodInvestments_iS_pdp0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zVTNpSLrGV3g" title="Balance, Beginning"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1170"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 82%; padding-bottom: 1.5pt"&gt;Acquisition&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--AcquisitionCosts_pp0p0_c20200101__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zhuXJr3UhhUc" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Acquisition"&gt;500,000&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--EquityMethodInvestments_iS_pdp0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zUYgjZ9sOb78" style="text-align: right" title="Balance, Beginning"&gt;500,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Additional payment&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--AdditionalPayment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zICLbseBTTfi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Additional payment"&gt;500,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zXIa7z3v9El5" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"&gt;1,000,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


</us-gaap:EquityMethodInvestmentsTextBlock>
    <us-gaap:AcquisitionCosts
      contextRef="From2020-01-012020-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">500000</us-gaap:AcquisitionCosts>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2020-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">500000</us-gaap:EquityMethodInvestments>
    <FSI:AdditionalPayment
      contextRef="From2021-01-012021-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">500000</FSI:AdditionalPayment>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2021-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">1000000</us-gaap:EquityMethodInvestments>
    <us-gaap:ShortTermDebtTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_80F_eus-gaap--ShortTermDebtTextBlock_zax4mFAAEIkd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;11.
&lt;span&gt;Short-Term Line of Credit &lt;b&gt;&lt;span id="xdx_82B_zIpwgU0ceoXe" style="display: none"&gt;SHORT-TERM LINE OF CREDIT&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;a&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In September 2018, the Company signed a new
agreement with Harris Bank (&#x201c;Harris&#x201d;) to renew the expiring credit line. The revolving line of credit is for an aggregate
amount of up to the lesser of (i) $&lt;span id="xdx_903_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_c20180930__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember_pp0p0" title="Aggregate amount of revolving line of credit"&gt;2,500,000&lt;/span&gt;, or (ii) &lt;span id="xdx_905_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20180901__20180930__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember_z0kbE77Ncsbi" title="Eligible percentage of domestic accounts receivable"&gt;80&lt;/span&gt;% of eligible domestic accounts receivable and certain foreign accounts receivable
plus &lt;span id="xdx_90A_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20180901__20180930__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember_zHBWVaVuL9Ga" title="Percentage of foreign accounts receivable of inventory"&gt;60&lt;/span&gt;% of inventory. The loan had an annual interest rate of 4.75%. The revolving line of credit at Harris was paid in October 2020,
upon the opening of the revolving line of credit at Midland States Bank (&#x201c;Midland&#x201d;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(b)
&lt;/b&gt;In April 2020 and in August 2021, ENP Investments signed a new agreement with Midland to renew the expiring credit line. The revolving
line of credit is for an aggregate amount up to $&lt;span id="xdx_901_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20210831__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_zsnxNNkG16na" title="Aggregate amount of revolving line of credit"&gt;3,000,000&lt;/span&gt;. The interest rate of this loan is subject to change from time to time based
on changes in an independent index which is the 1 month LIBOR as published in the Wall Street Journal (the &#x201c;Index&#x201d;). Interest
on the unpaid principal balance of this loan will be calculated using a rate of &lt;span id="xdx_90E_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20210801__20210830__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zKx86ZEQDTo2" title="Debt effective rate"&gt;1.000&lt;/span&gt; percentage points over the Index. Under no circumstances
will the interest rate of this loan be less than &lt;span id="xdx_90D_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20210831__srt--RangeAxis__srt--MaximumMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zDhnxUSw5NV3" title="Annual interest rate of loan"&gt;4.250&lt;/span&gt;% per annum or more than the maximum rate allowed by applicable law. The interest
rate at December 31, 2021 is &lt;span id="xdx_90F_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zQkyHFggnav5" title="Annual interest rate of loan"&gt;4.25&lt;/span&gt;% (2020 &#x2013; &lt;span id="xdx_90A_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zAcaPTtypEdg" title="Annual interest rate of loan"&gt;4.5&lt;/span&gt;%). In March 2022, a new agreement was signed, increasing the revolving line of credit
to an aggregate amount $&lt;span id="xdx_90E_eus-gaap--LineOfCredit_iI_c20220331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zShFT1oI8jki" title="Revolving line of credit"&gt;4,000,000&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
revolving line of credit contains customary affirmative and negative covenants, including the following: compliance with laws, provisions
of financial statements and periodic reports, payment of taxes, maintenance of inventory and insurance, maintenance of operating accounts
at Midland, Midland&#x2019;s access to collateral, formation or acquisition of subsidiaries, incurrence of indebtedness, dispositions
of assets, granting liens, changes in business, ownership or business locations, engaging in mergers and acquisitions, making investments
or distributions and affiliate transactions. NanoChem is a guarantor of &lt;span id="xdx_906_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zAIcKlvxE78k" title="Loan guaranteed rate"&gt;65&lt;/span&gt;% of all the principal and other loan costs not to exceed $&lt;span id="xdx_906_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_znZKOKm3USg2" title="Line of Credit"&gt;1,950,000&lt;/span&gt;.
As of December 31, 2021, ENP Investments was in compliance with all loan covenants.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;To
secure the repayment of any amounts borrowed under the revolving line of credit, ENP Investments granted Midland a security interest
in all inventory, equipment and fixtures and acknowledges a separate commercial security agreement from guarantor to Midland dated February
15, 2011.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Short-term
borrowings outstanding under the revolving line as of December 31, 2021 were $&lt;span id="xdx_90C_eus-gaap--ShortTermBorrowings_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zoXE6NK6pHpl" title="Short-term borrowings"&gt;811,665&lt;/span&gt; (2020 - $&lt;span id="xdx_90E_eus-gaap--ShortTermBorrowings_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_pp0p0" title="Short-term borrowings"&gt;541,456&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(c)
&lt;/b&gt;In October 2021, the Company signed a new agreement with Midland to replace the expiring credit line at Harris. The revolving line
of credit is for an aggregate amount of up to the lesser of (i) $&lt;span id="xdx_90F_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z0vu52ndMiud" title="Aggregate amount of revolving line of credit"&gt;3,500,000&lt;/span&gt;, or (ii) &lt;span id="xdx_90D_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zKXM2y9IFsY7" title="Eligible percentage of domestic accounts receivable"&gt;80&lt;/span&gt;% of eligible domestic accounts receivable and
certain foreign accounts receivable plus &lt;span id="xdx_90E_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zaRBjeb8JC25" title="Percentage of foreign accounts receivable of inventory"&gt;50&lt;/span&gt;% of inventory. Interest on the unpaid principal balance of this loan will be calculated using
a rate of &lt;span id="xdx_901_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20211001__20211031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zkITkB36FBE" title="Debt effective rate"&gt;0.500&lt;/span&gt; percentage points over the Index. Under no circumstances will the interest rate of this loan be less than &lt;span id="xdx_90C_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20211031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_z3dCYz392nBc" title="Debt instrument interest rate"&gt;4.50&lt;/span&gt;% per annum
or more than the maximum rate allowed by applicable law. The interest rate at December 31, 2021 is &lt;span id="xdx_909_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zeqV8IiE4m1f" title="Annual interest rate of loan"&gt;4.50&lt;/span&gt;% (2020 &#x2013; &lt;span id="xdx_90C_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20201231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zNCHGTw5Djm4" title="Annual interest rate of loan"&gt;3.75&lt;/span&gt;%).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
revolving line of credit contains customary affirmative and negative covenants, including the following: compliance with laws, provision
of financial statements and periodic reports, payment of taxes, maintenance of inventory and insurance, maintenance of operating accounts
at Midland, Midland&#x2019;s access to collateral, formation or acquisition of subsidiaries, incurrence of indebtedness, dispositions
of assets, granting liens, changes in business, ownership or business locations, engaging in mergers and acquisitions, making investments
or distributions and affiliate transactions. The covenants also require that the Company maintain a minimum ratio of qualifying financial
assets to the sum of qualifying financial obligations. As of December 31, 2021, Company was in compliance with all loan covenants.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;To
secure the repayment of any amounts borrowed under the revolving line of credit, the Company granted Midland a security interest in substantially
all of the assets of NanoChem, exclusive of intellectual property assets.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Short-term
borrowings outstanding under the revolving line as of December 31, 2021 were $&lt;span id="xdx_90F_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zr2PZourhaqk" title="Line of Credit"&gt;1,489,154&lt;/span&gt; (2020 - $&lt;span id="xdx_906_eus-gaap--LinesOfCreditCurrent_c20201231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_pp0p0" title="Line of Credit"&gt;1,574,617&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ShortTermDebtTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2018-09-30_custom_NewAgreementMember_custom_HarrisBankMember"
      decimals="0"
      unitRef="USD">2500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <FSI:EligiblePercentageOfDomesticAccountsReceivable
      contextRef="From2018-09-012018-09-30_custom_NewAgreementMember_custom_HarrisBankMember"
      decimals="INF"
      unitRef="Pure">0.80</FSI:EligiblePercentageOfDomesticAccountsReceivable>
    <FSI:PercentageOfForeignAccountsReceivableOfInventory
      contextRef="From2018-09-012018-09-30_custom_NewAgreementMember_custom_HarrisBankMember"
      decimals="INF"
      unitRef="Pure">0.60</FSI:PercentageOfForeignAccountsReceivableOfInventory>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2021-08-31_custom_NewAgreementMember_custom_MidlandStatesBankMember"
      decimals="0"
      unitRef="USD">3000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityInterestRateDuringPeriod
      contextRef="From2021-08-012021-08-30_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.01000</us-gaap:LineOfCreditFacilityInterestRateDuringPeriod>
    <us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd
      contextRef="AsOf2021-08-31_srt_MaximumMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.04250</us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd>
    <us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.0425</us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd>
    <us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd
      contextRef="AsOf2020-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.045</us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd>
    <us-gaap:LineOfCredit
      contextRef="AsOf2022-03-31_custom_MidlandStatesBankMember_custom_NewAgreementMember_us-gaap_SubsequentEventMember"
      decimals="0"
      unitRef="USD">4000000</us-gaap:LineOfCredit>
    <FSI:LoanGuaranteedRate
      contextRef="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember"
      decimals="INF"
      unitRef="Pure">0.65</FSI:LoanGuaranteedRate>
    <us-gaap:LinesOfCreditCurrent
      contextRef="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember"
      decimals="0"
      unitRef="USD">1950000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:ShortTermBorrowings
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">811665</us-gaap:ShortTermBorrowings>
    <us-gaap:ShortTermBorrowings
      contextRef="AsOf2020-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">541456</us-gaap:ShortTermBorrowings>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">3500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <FSI:EligiblePercentageOfDomesticAccountsReceivable
      contextRef="From2021-10-012021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.80</FSI:EligiblePercentageOfDomesticAccountsReceivable>
    <FSI:PercentageOfForeignAccountsReceivableOfInventory
      contextRef="From2021-10-012021-10-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.50</FSI:PercentageOfForeignAccountsReceivableOfInventory>
    <us-gaap:LineOfCreditFacilityInterestRateDuringPeriod
      contextRef="From2021-10-012021-10-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.00500</us-gaap:LineOfCreditFacilityInterestRateDuringPeriod>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2021-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionIncMember"
      decimals="INF"
      unitRef="Pure">0.0450</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd
      contextRef="AsOf2021-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.0450</us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd>
    <us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd
      contextRef="AsOf2020-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.0375</us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd>
    <us-gaap:LinesOfCreditCurrent
      contextRef="AsOf2021-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">1489154</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="AsOf2020-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">1574617</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LongTermDebtTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_805_eus-gaap--LongTermDebtTextBlock_zdJZydd6i4jf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;12.
&lt;span&gt;Long Term Debt &lt;b&gt;&lt;span id="xdx_82F_zcVGBibsHtv7" style="display: none"&gt;LONG TERM DEBT&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;a&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In October 2018, NanoChem signed a $&lt;span id="xdx_902_eus-gaap--DebtInstrumentFaceAmount_c20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Promissory note"&gt;4,100,000&lt;/span&gt;
term loan with Harris with a rate of prime to be repaid over &lt;span id="xdx_903_eus-gaap--DebtInstrumentTerm_dtY_c20181003__20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z87eYfN9ARS7" title="Debt instrument, term"&gt;7&lt;/span&gt; years with equal monthly installments plus interest along two payments
consisting of &lt;span id="xdx_904_ecustom--PaymentOfMonthlyInstallmentsInterestRate_pid_dp_uPure_c20181003__20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zFLghSUSBgYj" title="Payment of monthly installments interest rate"&gt;25&lt;/span&gt;% prior year cash flow recapture, capped at $&lt;span id="xdx_901_eus-gaap--DebtInstrumentPeriodicPayment_c20181003__20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Debt instrument periodic payment"&gt;300,000&lt;/span&gt;, due May 31, 2019 and 2020. The money was used to purchase a &lt;span id="xdx_90B_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20181031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zl9Atv0BqNT8" title="Ownership interest percentage"&gt;65&lt;/span&gt;%
interest in ENP Investments. Interest expense for the year ended December 31, 2020 was $&lt;span id="xdx_90F_eus-gaap--InterestExpenseDebt_pp0p0_c20200101__20201231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zSsbE3jhFBOb" title="Interest expense"&gt;75,874&lt;/span&gt;. This loan was paid in October 2020 upon
opening of credit facilities at Midland.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;b&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In April 2019, NanoChem signed a loan for
$&lt;span id="xdx_903_eus-gaap--DebtInstrumentFaceAmount_c20190430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_pp0p0" title="Promissory note"&gt;1,100,000&lt;/span&gt; with Harris with a rate of prime plus &lt;span id="xdx_90B_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20190430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zfeANNredtV5" title="Debt instrument, interest rate, stated percentage"&gt;0.5&lt;/span&gt;% for the purchase of new manufacturing equipment. The Company paid interest monthly
until February 2020, when equal monthly installments of the principal and interest were due until January 2024. Interest expense for
the year ended December 31, 2020 was $&lt;span id="xdx_904_eus-gaap--InterestExpenseDebt_c20200101__20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_pp0p0" title="Interest expense"&gt;36,272&lt;/span&gt;. This loan was paid in October 2020 upon opening of credit facilities at Midland.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;c&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In January 2018, ENP Investments signed a
$&lt;span id="xdx_906_eus-gaap--DebtInstrumentFaceAmount_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Promissory note"&gt;200,000&lt;/span&gt; promissory note with Midland with a rate of &lt;span id="xdx_90E_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zyV5ncbMpow" title="Debt instrument, interest rate, stated percentage"&gt;5.250&lt;/span&gt;% to be repaid over &lt;span id="xdx_907_eus-gaap--DebtInstrumentTerm_dtY_c20180101__20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_znU4irB35WC9" title="Debt instrument, term"&gt;7&lt;/span&gt; years with equal monthly installments plus interest.
This money was used to purchase production equipment and in May 2021, ENP Investments paid the loan in full with cash on hand. Interest
expense for the year ended December 31, 2021 was $&lt;span id="xdx_90A_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z19XxWsVcgxl" title="Interest expense"&gt;2,788&lt;/span&gt; (2020 - $&lt;span id="xdx_90C_eus-gaap--InterestExpenseDebt_pp0p0_c20200101__20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zasitCrF0ime" title="Interest expense"&gt;7,588&lt;/span&gt;). The principal balance owing at December 31, 2021 is $&lt;span id="xdx_908_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_d0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zutjZ6q96nch" title="Debt balance owing"&gt;nil&lt;/span&gt; (2020
- $&lt;span id="xdx_90D_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z4SkbQoEBB84" title="Debt balance owing"&gt;125,543&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;d&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In March 2016, ENP Investments signed a $&lt;span id="xdx_903_eus-gaap--DebtInstrumentFaceAmount_c20160331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Promissory note"&gt;45,941&lt;/span&gt;
promissory note with Ford Motor Credit Company with a rate of &lt;span id="xdx_907_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20160331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zzRIQsAQfoph" title="Debt instrument, interest rate, stated percentage"&gt;0.00&lt;/span&gt;% interest to be repaid over &lt;span id="xdx_90A_eus-gaap--DebtInstrumentTerm_dtY_c20160301__20160331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zDa4twNflega" title="Debt instrument, term"&gt;5&lt;/span&gt; years with equal monthly installments.
In August 2020, the loan was paid in full.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;(&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;e&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In April 2020, NanoChem received a &lt;span id="xdx_901_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zBRJMLyMAPDk" title="Debt instrument, term"&gt;two year&lt;/span&gt;
loan of $&lt;span id="xdx_904_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zFN65YlfIMg9" title="Promissory note"&gt;322,000&lt;/span&gt; through the Paycheck Protection Program with a rate of &lt;span id="xdx_901_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z98TxKrAS8hb" title="Debt instrument, interest rate, stated percentage"&gt;1&lt;/span&gt;%. In March, 2021, the loan was forgiven by the Small Business
Administration and has been recorded as Other Income on the consolidated statements of income and comprehensive income for the year ended
December 31, 2021.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(f)
&lt;/b&gt;In April 2020, ENP Investments received a &lt;span id="xdx_904_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zxIFzg3QUog" title="Debt instrument, term"&gt;two year&lt;/span&gt; loan of $&lt;span id="xdx_90D_eus-gaap--DebtInstrumentFaceAmount_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_pp0p0" title="Promissory note"&gt;215,960&lt;/span&gt; through the Paycheck Protection Program with a rate of &lt;span id="xdx_90B_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_z5owmptV0Rq1" title="Debt instrument, interest rate, stated percentage"&gt;1&lt;/span&gt;%. In
March, 2021, the loan was forgiven by the Small Business Administration and has been recorded as Other Income on the consolidated statements
of income and comprehensive income for the year ended December 31, 2021.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(g)
&lt;/b&gt;In October 2020, NanoChem signed a $&lt;span id="xdx_90F_eus-gaap--DebtInstrumentFaceAmount_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Promissory note"&gt;1,980,947&lt;/span&gt; term loan with Midland with a rate of &lt;span id="xdx_903_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z7jAis4EyjBb" title="Debt instrument, interest rate, stated percentage"&gt;3.85&lt;/span&gt;% to be repaid over &lt;span id="xdx_902_eus-gaap--DebtInstrumentTerm_dtY_c20201001__20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z9fz3MCXtfjd" title="Debt instrument, term"&gt;5&lt;/span&gt; years with equal monthly
payments including interest. The money was used to retire the debt at Harris related to the loan to purchase a &lt;span id="xdx_906_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zNrmr9fV3HVa" title="Ownership interest percentage"&gt;65&lt;/span&gt;% interest in ENP Investments.
Interest for the year ended December 31, 2021 was $&lt;span id="xdx_906_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zLWJIovm2gkj" title="Interest expense"&gt;69,831&lt;/span&gt; (2020 - $&lt;span id="xdx_901_eus-gaap--InterestExpenseDebt_c20200101__20201231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_pp0p0" title="Interest expense"&gt;13,389&lt;/span&gt;). The balance owing at December 31, 2021 is $&lt;span id="xdx_90E_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zalheqJL8w48" title="Debt balance owing"&gt;1,554,044&lt;/span&gt; (2020
- $&lt;span id="xdx_900_eus-gaap--DebtDefaultLongtermDebtAmount_c20201231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Debt balance owing"&gt;1,920,976&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_898_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zJvDhmOhYQw3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has committed to the following repayments:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_zkO0Q3J6R7gj" style="display: none"&gt;SCHEDULE OF INTEREST LOAN REPAYMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_907_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z2RLELj9IdWi" title="2022"&gt;382,705&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2023&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zUqHV2lOMiK6" style="text-align: right" title="2023"&gt;397,414&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zzomB3Owo9lg" style="text-align: right" title="2024"&gt;413,516&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z7uwFqbraXJh" style="border-bottom: Black 1.5pt solid; text-align: right" title="2025"&gt;360,409&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AC_zxg52zp2gwdk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(h)
&lt;/b&gt;In October 2020, NanoChem signed a loan for $&lt;span id="xdx_90E_eus-gaap--DebtInstrumentFaceAmount_c20201031__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_pp0p0" title="Promissory note"&gt;894,253&lt;/span&gt; with Midland with an interest rate &lt;span id="xdx_908_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zrslzdjfoDVg" title="Debt instrument, interest rate, stated percentage"&gt;3.85&lt;/span&gt;% to be repaid over two years with equal
monthly payments including interest. The funds were used to replace the loan at Harris for the purchase of new manufacturing equipment.
Interest expense for the year ended December 31, 2021 was $&lt;span id="xdx_90E_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zUFmHwfeMMI7" title="Interest expense"&gt;24,827&lt;/span&gt; (2020 - $&lt;span id="xdx_90B_eus-gaap--InterestExpenseDebt_c20200101__20201231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_pp0p0" title="Interest expense"&gt;6,218&lt;/span&gt;). The balance owing at December 31, 2021 is $&lt;span id="xdx_90E_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zxwfyny75aTa" title="Debt balance owing"&gt;381,674&lt;/span&gt;
(2020 - $&lt;span id="xdx_909_eus-gaap--DebtDefaultLongtermDebtAmount_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_pp0p0" title="Debt balance owing"&gt;822,380&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(i)
&lt;/b&gt;In January 2020, ENP Mendota refinanced its mortgage and signed a loan for $&lt;span id="xdx_90D_eus-gaap--DebtInstrumentFaceAmount_c20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_pp0p0" title="Promissory note"&gt;450,000&lt;/span&gt; with Stock Yards Bank &amp;amp; Trust to be repaid
over &lt;span id="xdx_906_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zEQLoMTpAE0i" title="Debt instrument, term"&gt;10&lt;/span&gt; years with monthly installments plus interest. Interest for the first five years is at &lt;span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zDObm7Ko6uc2" title="Debt instrument, interest rate, stated percentage"&gt;4.35&lt;/span&gt;% and it will be adjusted for the
last five years to the Cincinnati Federal Home Bank Loan &lt;span id="xdx_902_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__srt--FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis__srt--FederalHomeLoanBankOfCincinnatiMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_z5Q7xjrPA1mb" title="Debt instrument, term"&gt;5&lt;/span&gt; year fixed index plus &lt;span id="xdx_906_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__srt--FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis__srt--FederalHomeLoanBankOfCincinnatiMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zfa4kbuvzMn6" title="Debt instrument, interest rate, stated percentage"&gt;2.5&lt;/span&gt;%. Interest expense for the year ended December 31,
2021 was $&lt;span id="xdx_904_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_zNpjs0yQ18sf" title="Interest expense"&gt;17,107&lt;/span&gt; (2020 - $&lt;span id="xdx_906_eus-gaap--InterestExpenseDebt_c20200101__20201231__dei--LegalEntityAxis__custom--EnpRealtyLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_pp0p0" title="Interest expense"&gt;18,049&lt;/span&gt;). The balance owing at December 31, 2021 is $&lt;span id="xdx_90F_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zS52XGWgFBc3" title="Debt balance owing"&gt;430,880&lt;/span&gt; (2020 - $&lt;span id="xdx_907_eus-gaap--DebtDefaultLongtermDebtAmount_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_pp0p0" title="Debt balance owing"&gt;440,779&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89D_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zYX9114MX1Jk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has committed to the following repayments:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_z2z9lTHKdU56" style="display: none"&gt;SCHEDULE OF INTEREST LOAN REPAYMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_909_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zPcjih80ZYFl" title="2022"&gt;29,749&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2023&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zBGEVE3alHe5" style="text-align: right" title="2023"&gt;29,749&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zQGQAp5ZWBI3" style="text-align: right" title="2025"&gt;29,749&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zdnMGS0ccLj7" style="border-bottom: Black 1.5pt solid; text-align: right" title="2025"&gt;29,749&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AF_zUeTgMUnWFr5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_890_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zDlxcW0x5J0l" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of December 31, 2021, Company was in compliance with all loan covenants.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BC_zddv8THbImJ1" style="display: none"&gt;SCHEDULE OF LOAN COVENANTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold"&gt;Continuity&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20210101__20211231_zBpDd1JsvKH9" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20200101__20201231_zouEcQcAiCMk" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--LongTermDebt_iS_pp0p0_zF56tzaCsNRl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&gt;Balance, January 1&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;3,847,638&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;4,380,393&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--ProceedsFromLoans_i_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Plus: Proceeds from loans&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1349"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,413,160&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--ProceedsFromLoanAcquiredWithAcquisition_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Plus: Loan acquired with acquisition of ENP Realty&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1352"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;450,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--RepaymentsOfBankDebt_iN_pp0p0_di_z7Wfa0KQE4N9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Less: Forgiveness on PPP loans&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(537,960&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1356"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_pp0p0_di_zj07dnKMhLb5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Less: Payments on loan&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(943,080&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(4,395,915&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--LongTermDebt_iE_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, December 31&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,366,598&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;3,847,638&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A4_zUEUFxz8sQYf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p id="xdx_89E_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zlD96N4W2vQ" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_zzm7v86wfPT5" style="display: none"&gt;SCHEDULE OF OUTSTANDING BALANCE LOAN&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold"&gt;Outstanding balance&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;a) Long term debt &#x2013; Harris Bank&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_zxIjmuX8HNvc" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1366"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_pdp0" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1368"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;b) Long term debt &#x2013; Harris Bank&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_zkcKMXdRNT97" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1370"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_pdp0" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1372"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;c) Long term debt &#x2013; Midland States Bank&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z0Szl05z63ye" style="width: 16%; text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1374"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_pp0p0" style="width: 16%; text-align: right" title="Long-term Debt"&gt;125,543&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;d) Long term debt &#x2013; Ford Credit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_zvnkahcpB0vh" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1378"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_pdp0" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1380"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;e) Long term debt &#x2013; PPP&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zJJe1FRLlSd7" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1382"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_pp0p0" style="text-align: right" title="Long-term Debt"&gt;322,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;f) Long term debt - PPP&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zCMV8dAvLlCk" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1386"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_pp0p0" style="text-align: right" title="Long-term Debt"&gt;215,960&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;g) Long term debt &#x2013; Midland States Bank&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zYZjQdY2Yu7i" style="text-align: right" title="Long-term Debt"&gt;1,554,044&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_pp0p0" style="text-align: right" title="Long-term Debt"&gt;1,920,976&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;h) Long term debt &#x2013; Midland States Bank&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zIGWyQzrWaRh" style="text-align: right" title="Long-term Debt"&gt;381,674&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_pp0p0" style="text-align: right" title="Long-term Debt"&gt;822,380&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;i) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_z2wGuHePLfYb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term Debt"&gt;430,880&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term Debt"&gt;440,779&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Long-term Debt&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--LongTermDebt_iI_pp0p0_c20211231_zHD4j1ib0Zt7" style="text-align: right" title="Long-term Debt"&gt;2,366,598&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--LongTermDebt_c20201231_pp0p0" style="text-align: right" title="Long-term Debt"&gt;3,847,638&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Less: current portion&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20211231_zWMsVH9ij1wd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: current portion"&gt;(793,574&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20201231_zhXXib1qq172" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: current portion"&gt;(848,794&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--LongTermDebtNoncurrent_iI_pp0p0_c20211231_zD2kzuaN6BS5" style="border-bottom: Black 2.5pt double; text-align: right" title="Long term balance"&gt;1,573,024&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--LongTermDebtNoncurrent_c20201231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Long term balance"&gt;2,998,844&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AE_z85PNFt0m3y3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:LongTermDebtTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">4100000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentTerm contextRef="From2018-10-032018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember">P7Y</us-gaap:DebtInstrumentTerm>
    <FSI:PaymentOfMonthlyInstallmentsInterestRate
      contextRef="From2018-10-032018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember"
      decimals="INF"
      unitRef="Pure">0.25</FSI:PaymentOfMonthlyInstallmentsInterestRate>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="From2018-10-032018-10-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">300000</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2018-10-31_custom_TermLoanMember_custom_EnpInvestmentsLLCMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2020-01-012020-12-31_custom_TermLoanMember_custom_HarrisBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">75874</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2019-04-30_custom_HarrisBankMember_custom_NanoChemSolutionIncMember"
      decimals="0"
      unitRef="USD">1100000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2019-04-30_custom_HarrisBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionIncMember"
      decimals="INF"
      unitRef="Pure">0.005</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2020-01-012020-12-31_custom_HarrisBankMember_custom_NanoChemSolutionIncMember"
      decimals="0"
      unitRef="USD">36272</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">200000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.05250</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm contextRef="From2018-01-012018-01-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember">P7Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">2788</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="From2020-01-012020-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">7588</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2020-12-31_custom_MidlandBankMember_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">125543</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">45941</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.0000</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm contextRef="From2016-03-012016-03-31_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">P5Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentTerm contextRef="From2020-04-012020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember">P2Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">322000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-04-30_custom_PaycheckProtectionProgramMember_custom_NanoChemSolutionsIncMember"
      decimals="INF"
      unitRef="Pure">0.01</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm contextRef="From2020-04-012020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember">P2Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">215960</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-04-30_custom_HarrisBankMember_custom_EnpInvestmentsLLCMember"
      decimals="INF"
      unitRef="Pure">0.01</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">1980947</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionsIncMember"
      decimals="INF"
      unitRef="Pure">0.0385</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm contextRef="From2020-10-012020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">P5Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2020-10-31_custom_TermLoanMember_custom_EnpInvestmentsLLCMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_NanoChemSolutionsIncMember_custom_TermLoanMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">69831</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="From2020-01-012020-12-31_custom_NanoChemSolutionsIncMember_custom_TermLoanMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">13389</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">1554044</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2020-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">1920976</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock contextRef="From2021-01-012021-12-31_custom_PromissoryNoteOneWithMidlandBankMember">&lt;p id="xdx_898_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zJvDhmOhYQw3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has committed to the following repayments:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_zkO0Q3J6R7gj" style="display: none"&gt;SCHEDULE OF INTEREST LOAN REPAYMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_907_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z2RLELj9IdWi" title="2022"&gt;382,705&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2023&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zUqHV2lOMiK6" style="text-align: right" title="2023"&gt;397,414&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_zzomB3Owo9lg" style="text-align: right" title="2024"&gt;413,516&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteOneWithMidlandBankMember_z7uwFqbraXJh" style="border-bottom: Black 1.5pt solid; text-align: right" title="2025"&gt;360,409&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember"
      decimals="0"
      unitRef="USD">382705</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember"
      decimals="0"
      unitRef="USD">397414</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember"
      decimals="0"
      unitRef="USD">413516</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember"
      decimals="0"
      unitRef="USD">360409</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2020-10-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">894253</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-10-31_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemSolutionsIncMember"
      decimals="INF"
      unitRef="Pure">0.0385</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">24827</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="From2020-01-012020-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">6218</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2021-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">381674</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2020-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">822380</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2020-01-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember"
      decimals="0"
      unitRef="USD">450000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentTerm contextRef="From2020-01-012020-01-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">P10Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-01-31_custom_StockYardsBankTrustMember_us-gaap_PrimeRateMember_custom_EnpRealtyLLCMember"
      decimals="INF"
      unitRef="Pure">0.0435</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm contextRef="From2020-01-012020-01-31_srt_FederalHomeLoanBankOfCincinnatiMember_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember">P5Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-01-31_srt_FederalHomeLoanBankOfCincinnatiMember_custom_StockYardsBankTrustMember_us-gaap_PrimeRateMember_custom_EnpRealtyLLCMember"
      decimals="INF"
      unitRef="Pure">0.025</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_EnpRealtyLLCMember_custom_StockYardsBankTrustMember"
      decimals="0"
      unitRef="USD">17107</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="From2020-01-012020-12-31_custom_EnpRealtyLLCMember_custom_StockYardsBankTrustMember"
      decimals="0"
      unitRef="USD">18049</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2021-12-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember"
      decimals="0"
      unitRef="USD">430880</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2020-12-31_custom_StockYardsBankTrustMember_custom_EnpRealtyLLCMember"
      decimals="0"
      unitRef="USD">440779</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock contextRef="From2021-01-012021-12-31_custom_PromissoryNoteWithMidlandBankMember">&lt;p id="xdx_89D_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_hus-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zYX9114MX1Jk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has committed to the following repayments:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_z2z9lTHKdU56" style="display: none"&gt;SCHEDULE OF INTEREST LOAN REPAYMENT&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; text-align: justify"&gt;2022&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_909_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zPcjih80ZYFl" title="2022"&gt;29,749&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;2023&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zBGEVE3alHe5" style="text-align: right" title="2023"&gt;29,749&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zQGQAp5ZWBI3" style="text-align: right" title="2025"&gt;29,749&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--PromissoryNoteWithMidlandBankMember_zdnMGS0ccLj7" style="border-bottom: Black 1.5pt solid; text-align: right" title="2025"&gt;29,749&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember"
      decimals="0"
      unitRef="USD">29749</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember"
      decimals="0"
      unitRef="USD">29749</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember"
      decimals="0"
      unitRef="USD">29749</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="AsOf2020-01-31_custom_PromissoryNoteWithMidlandBankMember"
      decimals="0"
      unitRef="USD">29749</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <FSI:ScheduleOfLoanCovenantsTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_890_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zDlxcW0x5J0l" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of December 31, 2021, Company was in compliance with all loan covenants.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BC_zddv8THbImJ1" style="display: none"&gt;SCHEDULE OF LOAN COVENANTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold"&gt;Continuity&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20210101__20211231_zBpDd1JsvKH9" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20200101__20201231_zouEcQcAiCMk" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--LongTermDebt_iS_pp0p0_zF56tzaCsNRl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&gt;Balance, January 1&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;3,847,638&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;4,380,393&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--ProceedsFromLoans_i_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Plus: Proceeds from loans&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1349"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,413,160&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--ProceedsFromLoanAcquiredWithAcquisition_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Plus: Loan acquired with acquisition of ENP Realty&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1352"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;450,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--RepaymentsOfBankDebt_iN_pp0p0_di_z7Wfa0KQE4N9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Less: Forgiveness on PPP loans&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(537,960&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1356"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_pp0p0_di_zj07dnKMhLb5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Less: Payments on loan&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(943,080&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(4,395,915&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--LongTermDebt_iE_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, December 31&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,366,598&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;3,847,638&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</FSI:ScheduleOfLoanCovenantsTableTextBlock>
    <us-gaap:LongTermDebt contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">3847638</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt contextRef="AsOf2019-12-31" decimals="0" unitRef="USD">4380393</us-gaap:LongTermDebt>
    <us-gaap:ProceedsFromLoans
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">3413160</us-gaap:ProceedsFromLoans>
    <FSI:ProceedsFromLoanAcquiredWithAcquisition
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">450000</FSI:ProceedsFromLoanAcquiredWithAcquisition>
    <us-gaap:RepaymentsOfBankDebt
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">537960</us-gaap:RepaymentsOfBankDebt>
    <us-gaap:PaymentsForProceedsFromDepositOnLoan
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">943080</us-gaap:PaymentsForProceedsFromDepositOnLoan>
    <us-gaap:PaymentsForProceedsFromDepositOnLoan
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">4395915</us-gaap:PaymentsForProceedsFromDepositOnLoan>
    <us-gaap:LongTermDebt contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2366598</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">3847638</us-gaap:LongTermDebt>
    <us-gaap:ScheduleOfDebtInstrumentsTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_89E_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zlD96N4W2vQ" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_zzm7v86wfPT5" style="display: none"&gt;SCHEDULE OF OUTSTANDING BALANCE LOAN&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold"&gt;Outstanding balance&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;a) Long term debt &#x2013; Harris Bank&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_zxIjmuX8HNvc" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1366"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember_pdp0" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1368"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;b) Long term debt &#x2013; Harris Bank&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_zkcKMXdRNT97" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1370"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankOneMember_pdp0" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1372"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;c) Long term debt &#x2013; Midland States Bank&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z0Szl05z63ye" style="width: 16%; text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1374"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_pp0p0" style="width: 16%; text-align: right" title="Long-term Debt"&gt;125,543&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;d) Long term debt &#x2013; Ford Credit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_iI_pdp0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_zvnkahcpB0vh" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1378"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember_pdp0" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1380"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;e) Long term debt &#x2013; PPP&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zJJe1FRLlSd7" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1382"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_pp0p0" style="text-align: right" title="Long-term Debt"&gt;322,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;f) Long term debt - PPP&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zCMV8dAvLlCk" style="text-align: right" title="Long-term Debt"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1386"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_pp0p0" style="text-align: right" title="Long-term Debt"&gt;215,960&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;g) Long term debt &#x2013; Midland States Bank&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zYZjQdY2Yu7i" style="text-align: right" title="Long-term Debt"&gt;1,554,044&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_pp0p0" style="text-align: right" title="Long-term Debt"&gt;1,920,976&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;h) Long term debt &#x2013; Midland States Bank&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zIGWyQzrWaRh" style="text-align: right" title="Long-term Debt"&gt;381,674&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_pp0p0" style="text-align: right" title="Long-term Debt"&gt;822,380&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;i) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--LongTermDebt_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_z2wGuHePLfYb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term Debt"&gt;430,880&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--LongTermDebt_c20201231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term Debt"&gt;440,779&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Long-term Debt&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--LongTermDebt_iI_pp0p0_c20211231_zHD4j1ib0Zt7" style="text-align: right" title="Long-term Debt"&gt;2,366,598&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--LongTermDebt_c20201231_pp0p0" style="text-align: right" title="Long-term Debt"&gt;3,847,638&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Less: current portion&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20211231_zWMsVH9ij1wd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: current portion"&gt;(793,574&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--LongTermDebtCurrent_iNI_pp0p0_di_c20201231_zhXXib1qq172" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: current portion"&gt;(848,794&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--LongTermDebtNoncurrent_iI_pp0p0_c20211231_zD2kzuaN6BS5" style="border-bottom: Black 2.5pt double; text-align: right" title="Long term balance"&gt;1,573,024&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--LongTermDebtNoncurrent_c20201231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Long term balance"&gt;2,998,844&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfDebtInstrumentsTextBlock>
    <us-gaap:LongTermDebt
      contextRef="AsOf2020-12-31_custom_MidlandStatesBankMember"
      decimals="0"
      unitRef="USD">125543</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2020-12-31_custom_PaycheckProtectionProgramMember"
      decimals="0"
      unitRef="USD">322000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2020-12-31_custom_PaycheckProtectionProgramOneMember"
      decimals="0"
      unitRef="USD">215960</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankOneMember"
      decimals="0"
      unitRef="USD">1554044</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2020-12-31_custom_MidlandStatesBankOneMember"
      decimals="0"
      unitRef="USD">1920976</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankTwoMember"
      decimals="0"
      unitRef="USD">381674</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2020-12-31_custom_MidlandStatesBankTwoMember"
      decimals="0"
      unitRef="USD">822380</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_StockYardsBankTrustMember"
      decimals="0"
      unitRef="USD">430880</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2020-12-31_custom_StockYardsBankTrustMember"
      decimals="0"
      unitRef="USD">440779</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2366598</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">3847638</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">793574</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">848794</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1573024</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">2998844</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:DebtDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_808_eus-gaap--DebtDisclosureTextBlock_zfVMBsOwiTj4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;13.
&lt;span&gt;Convertible Note Payable &lt;b&gt;&lt;span id="xdx_82C_zjOqL2wXfsC1" style="display: none"&gt;CONVERTIBLE NOTE PAYABLE&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
October 2018, the Company issued a convertible note payable in the amount of $&lt;span id="xdx_900_eus-gaap--ConvertibleNotesPayable_c20181031__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_pp0p0" title="Convertible note payable"&gt;1,000,000&lt;/span&gt; in connection with the acquisition of EnP Investments
LLC. The convertible note is due on or before &lt;span id="xdx_900_eus-gaap--DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear_dd_c20181001__20181031__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_ztv2wQZBM7D2" title="Debt convertible due date"&gt;September 30, 2023&lt;/span&gt; with &lt;span id="xdx_90F_eus-gaap--DebtConversionConvertedInstrumentRate_pid_dp_uPure_c20181001__20181031__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_z1hjVYMeGb24" title="Debt conversion ratio"&gt;5&lt;/span&gt;% interest due per year. At the option of the holder, the Note
may be converted into &lt;span id="xdx_90B_eus-gaap--DebtConversionConvertedInstrumentSharesIssued1_pid_c20181001__20181031__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_zeyckbLQecY" title="Debt converted to shares"&gt;400,000&lt;/span&gt; shares in the Company&#x2019;s common stock.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
June 2019, the holder opted to convert $&lt;span id="xdx_90F_eus-gaap--DebtConversionConvertedInstrumentAmount1_c20190601__20190630__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pp0p0" title="Debt converted to shares, amount"&gt;500,000&lt;/span&gt; of the convertible note payable into &lt;span id="xdx_90C_eus-gaap--DebtConversionConvertedInstrumentSharesIssued1_c20190601__20190630__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pdd" title="Debt converted to shares"&gt;200,000&lt;/span&gt; shares of the Company&#x2019;s common stock.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
April 2020, the Company repaid the remaining principal balance of $&lt;span id="xdx_902_eus-gaap--DebtConversionConvertedInstrumentAmount1_c20200401__20200430__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pp0p0" title="Debt converted to shares, amount"&gt;500,000&lt;/span&gt; and accrued interest of $&lt;span id="xdx_90E_eus-gaap--DebtInstrumentIncreaseAccruedInterest_c20200401__20200430__srt--ConsolidatedEntitiesAxis__srt--ParentCompanyMember_pp0p0" title="Accrued interest"&gt;13,046&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ConvertibleNotesPayable
      contextRef="AsOf2018-10-31_custom_EnpInvestmentsLLCMember"
      decimals="0"
      unitRef="USD">1000000</us-gaap:ConvertibleNotesPayable>
    <us-gaap:DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear contextRef="From2018-10-012018-10-31_custom_EnpInvestmentsLLCMember">2023-09-30</us-gaap:DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear>
    <us-gaap:DebtConversionConvertedInstrumentRate
      contextRef="From2018-10-012018-10-31_custom_EnpInvestmentsLLCMember"
      decimals="INF"
      unitRef="Pure">0.05</us-gaap:DebtConversionConvertedInstrumentRate>
    <us-gaap:DebtConversionConvertedInstrumentSharesIssued1
      contextRef="From2018-10-012018-10-31_srt_ParentCompanyMember"
      decimals="INF"
      unitRef="Shares">400000</us-gaap:DebtConversionConvertedInstrumentSharesIssued1>
    <us-gaap:DebtConversionConvertedInstrumentAmount1
      contextRef="From2019-06-012019-06-30_srt_ParentCompanyMember"
      decimals="0"
      unitRef="USD">500000</us-gaap:DebtConversionConvertedInstrumentAmount1>
    <us-gaap:DebtConversionConvertedInstrumentSharesIssued1
      contextRef="From2019-06-012019-06-30_srt_ParentCompanyMember"
      decimals="INF"
      unitRef="Shares">200000</us-gaap:DebtConversionConvertedInstrumentSharesIssued1>
    <us-gaap:DebtConversionConvertedInstrumentAmount1
      contextRef="From2020-04-012020-04-30_srt_ParentCompanyMember"
      decimals="0"
      unitRef="USD">500000</us-gaap:DebtConversionConvertedInstrumentAmount1>
    <us-gaap:DebtInstrumentIncreaseAccruedInterest
      contextRef="From2020-04-012020-04-30_srt_ParentCompanyMember"
      decimals="0"
      unitRef="USD">13046</us-gaap:DebtInstrumentIncreaseAccruedInterest>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_800_eus-gaap--IncomeTaxDisclosureTextBlock_zjSVv83JGqm1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;14.
&lt;span&gt;Income Taxes &lt;span id="xdx_823_zJKm2vKab4Ca" style="display: none"&gt;INCOME TAXES&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89C_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zhXy14BwRlH8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
provision for income tax expense (benefit) is comprised of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BA_zIKV0MBR38fg" style="display: none"&gt;SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20210101__20211231_zznX9k44fEDl" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20200101__20201231_zYbdMcJRW6mb" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zpU4nxvSzL3g" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Current tax, federal&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;1,309,503&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;739,113&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_maCITEBzvlG_ztBreY74xPtj" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Current tax, state&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;592,394&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;334,361&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--CurrentForeignTaxExpenseBenefit_maCITEBzvlG_zbv9lmqqUbH8" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Current tax, foreign&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;91,285&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;124,414&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iT_pp0p0_mtCITEBzvlG_maITEBz6BY_zAmv1UYdyF24" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Current tax, total&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,993,182&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,197,888&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_maDITEBzP63_zSyaSAm05Fk1" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Deferred income tax, federal&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;250,153&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;158,308&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_maDITEBzP63_zUlJl5zuNB2k" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Deferred income tax, state&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;113,164&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;71,616&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--DeferredForeignIncomeTaxExpenseBenefit_maDITEBzP63_zY27j8MzXNzf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Deferred income tax, foreign&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1454"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;-&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;179,629&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz6BY_zGUWIX66RRfi" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Deferred income tax, total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;363,317&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;409,553&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz6BY_z9mp6rKc9gQ3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,356,499&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,607,441&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


&lt;p id="xdx_8A8_zJO7mIM0lUec" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_897_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zb9vNqNKt8S" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table reconciles the income tax expense at the U.S. Federal statutory rate to income tax expense at the Company&#x2019;s effective
tax rates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B4_zu5scLi9Z85h" style="display: none"&gt;SCHEDULE OF RECONCILIATION OF INCOME TAXES&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20210101__20211231_zXc8yV8zkw3c" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_490_20200101__20201231_zntZieUtCgW7" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Income before tax&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;6,650,756&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;5,190,975&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_zLRRcG5UOrd9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;US statutory tax rates&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;30.50&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;30.50&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--ExpectedIncomeTaxRecovery_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Expected income tax&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,028,481&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,583,247&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--IncomeTaxReconciliationNondeductibleExpense_i_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Non-deductible items&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(29,508&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(60,470&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--IncomeTaxReconciliationOtherAdjustments_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Change in estimates and other&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(65,027&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;603,422&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--IncomeTaxReconciliationChangeInEnactedTaxRate_i_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Change in enacted tax rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;337,961&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1481"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--IncomeTaxReconciliationForeignIncomeTaxRateDifferential_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Foreign tax rate difference&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(86,696&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(120,372&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_i_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Change in valuation allowance&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;171,288&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(398,386&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--IncomeTaxExpenseBenefit_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Total income taxes&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2,356,499&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,607,441&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--CurrentIncomeTaxExpenseBenefit_z3VCIfDA4USh" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Current income tax expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,993,182&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,197,888&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_zZKzGRevZ5u5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Deferred tax expense (recovery)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;363,317&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;409,553&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_zm04aIqHB76k" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Total income tax expense&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2,356,499&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,607,441&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


&lt;p id="xdx_8A0_zRk2enydd8l7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Deferred
taxes reflect the tax effects of temporary differences between the carrying amounts of assets and liabilities for financial reporting
purposes. Deferred tax assets (liabilities) at December 31, 2021 and 2020 are comprised of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_895_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_z9nqjPHOeW29" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zpx4QTlaOwV8" style="display: none"&gt;SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Canada&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%; text-align: left; padding-left: 10pt"&gt;Non capital loss carryforwards&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z0OFHJOItPqc" style="width: 14%; text-align: right" title="Non capital loss carryforwards"&gt;1,443,371&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="width: 14%; text-align: right" title="Non capital loss carryforwards"&gt;1,638,357&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Intangible assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zGoz46ANdiY2" style="text-align: right" title="Intangible assets"&gt;19,849&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Intangible assets"&gt;18,863&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Property, equipment and leaseholds&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zRvbxhXcIHka" style="text-align: right" title="Property, equipment and leaseholds"&gt;587,408&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Property, equipment and leaseholds"&gt;624,016&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Financial instruments&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zBBMSCqbfQH7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Financial instruments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1515"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Financial instruments"&gt;26,690&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_ecustom--DeferredTaxAssetsLiabilitiesGross_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z91gA393M848" style="text-align: right" title="Deferred tax asset (liability)"&gt;2,050,628&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--DeferredTaxAssetsLiabilitiesGross_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Deferred tax asset (liability)"&gt;2,307,926&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Valuation allowance&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zZihIEpGnnei" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance"&gt;(2,050,628&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zgCKL5SSDBU6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance"&gt;(2,307,926&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Net deferred tax asset&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_ecustom--DeferredTaxAssetNet_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zlHzuZuMTp4j" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net Deferred tax asset"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1527"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_ecustom--DeferredTaxAssetNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net Deferred tax asset"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1529"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;US&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Net operating loss carryforwards&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z5DhnUchqwFi" style="text-align: right" title="Non capital loss carryforwards"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1531"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="text-align: right" title="Non capital loss carryforwards"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1533"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Intangible assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zxOsMADbQByl" style="text-align: right" title="Intangible assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1535"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="text-align: right" title="Intangible assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1537"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Investments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zLzZEBp3Fqkk" style="text-align: right" title="Investments"&gt;(241,880&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zcjysrhuJ5Ga" style="text-align: right" title="Investments"&gt;(167,635&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Property, equipment and leaseholds&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zAaup1v6dBGe" style="text-align: right" title="Property, equipment and leaseholds"&gt;(68,282&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="text-align: right" title="Property, equipment and leaseholds"&gt;(66,116&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif"&gt;Property, equipment and leaseholds&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zT8Pe4EomrTh" style="text-align: right" title="Property, equipment and leaseholds"&gt;12,697&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zXHE08whnfzc" style="text-align: right" title="Property, equipment and leaseholds"&gt;201,393&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Financial instruments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0IPCgahGEJ9" style="text-align: right" title="Financial instruments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1551"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="text-align: right" title="Financial instruments"&gt;98,210&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Deferred tax asset not recognized&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--DeferredTaxAssetNotRecognized_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8fmlH1x77U6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1555"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_ecustom--DeferredTaxAssetNotRecognized_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1557"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Net deferred tax asset (liability)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_ecustom--DeferredTaxAssetLiabilitiesNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zG0di8pQy32d" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)"&gt;(297,465&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_ecustom--DeferredTaxAssetLiabilitiesNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)"&gt;65,852&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AF_zezOmz0g4aa8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has non-capital loss carryforwards of approximately $&lt;span id="xdx_901_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zLgu9WsnXFde" title="Operating loss carryforwards"&gt;6,275,526&lt;/span&gt; (2020 - $&lt;span id="xdx_909_eus-gaap--OperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" title="Operating loss carryforwards"&gt;6,068,054&lt;/span&gt;) which may be carried forward to apply against
future year income tax for Canadian income tax purposes, subject to the final determination by taxation authorities, expiring in the
following years:&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89B_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zwhwvsgTC2l7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B2_zZ7CVnDqFLHi" style="display: none"&gt;SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: center"&gt;`&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: right"&gt;Loss&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 66%; text-align: right"&gt;2029&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandTwentyNineTaxYearMember_zUIagJc2hIv6" style="width: 30%; text-align: right" title="Total"&gt;891,014&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: right"&gt;2030&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zS68ahb6bGNg" style="text-align: right" title="Total"&gt;1,081,844&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: right"&gt;2031&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneTaxYearMember_zR9uFe9AJ6hl" style="text-align: right" title="Total"&gt;1,245,577&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: right"&gt;2037&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenTaxYearMember_zHNRFAGUkS15" style="text-align: right" title="Total"&gt;2,238,533&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: right"&gt;2038&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyEightTaxYearMember_zKiQnMQuwq6h" style="text-align: right" title="Total"&gt;372,149&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: right"&gt;2039&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineTaxYearMember_zVw76eInNyE1" style="text-align: right" title="Total"&gt;72,378&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: right"&gt;2040&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyTaxYearMember_zsRdBU1IpPA7" style="text-align: right" title="Total"&gt;166,494&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: right; padding-bottom: 1.5pt"&gt;2041&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyOneTaxYearMember_z483yRk4B1t1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;207,537&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center; padding-bottom: 1.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z3nu3wpmTcug" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;6,275,526&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A2_zGwIXl5gS6Ik" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
at December 31, 2021, the Company has no net operating loss carryforwards available for US tax purposes.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="text-decoration: underline"&gt;Accounting
for Uncertainty for Income Tax&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
at December 31, 2021 and 2020, the Company&#x2019;s consolidated balance sheets did not reflect a liability for uncertain tax positions,
nor any accrued penalties or interest associated with income tax uncertainties. The Company has no income tax examinations in progress.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_89C_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zhXy14BwRlH8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
provision for income tax expense (benefit) is comprised of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BA_zIKV0MBR38fg" style="display: none"&gt;SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20210101__20211231_zznX9k44fEDl" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20200101__20201231_zYbdMcJRW6mb" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zpU4nxvSzL3g" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Current tax, federal&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;1,309,503&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;739,113&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_maCITEBzvlG_ztBreY74xPtj" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Current tax, state&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;592,394&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;334,361&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--CurrentForeignTaxExpenseBenefit_maCITEBzvlG_zbv9lmqqUbH8" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Current tax, foreign&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;91,285&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;124,414&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iT_pp0p0_mtCITEBzvlG_maITEBz6BY_zAmv1UYdyF24" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Current tax, total&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,993,182&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,197,888&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_maDITEBzP63_zSyaSAm05Fk1" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Deferred income tax, federal&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;250,153&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;158,308&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_maDITEBzP63_zUlJl5zuNB2k" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Deferred income tax, state&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;113,164&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;71,616&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--DeferredForeignIncomeTaxExpenseBenefit_maDITEBzP63_zY27j8MzXNzf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Deferred income tax, foreign&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1454"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;-&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;179,629&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz6BY_zGUWIX66RRfi" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Deferred income tax, total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;363,317&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;409,553&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz6BY_z9mp6rKc9gQ3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,356,499&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,607,441&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">1309503</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">739113</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">592394</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">334361</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">91285</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">124414</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">1993182</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1197888</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">250153</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">158308</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">113164</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">71616</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">179629</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">363317</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">409553</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">2356499</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1607441</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_897_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zb9vNqNKt8S" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table reconciles the income tax expense at the U.S. Federal statutory rate to income tax expense at the Company&#x2019;s effective
tax rates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B4_zu5scLi9Z85h" style="display: none"&gt;SCHEDULE OF RECONCILIATION OF INCOME TAXES&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20210101__20211231_zXc8yV8zkw3c" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_490_20200101__20201231_zntZieUtCgW7" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Income before tax&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;6,650,756&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;5,190,975&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_zLRRcG5UOrd9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;US statutory tax rates&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;30.50&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;30.50&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--ExpectedIncomeTaxRecovery_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Expected income tax&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,028,481&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,583,247&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--IncomeTaxReconciliationNondeductibleExpense_i_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Non-deductible items&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(29,508&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(60,470&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--IncomeTaxReconciliationOtherAdjustments_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Change in estimates and other&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(65,027&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;603,422&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--IncomeTaxReconciliationChangeInEnactedTaxRate_i_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Change in enacted tax rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;337,961&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1481"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: right"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--IncomeTaxReconciliationForeignIncomeTaxRateDifferential_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Foreign tax rate difference&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(86,696&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(120,372&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_i_pp0p0" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Change in valuation allowance&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;171,288&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(398,386&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--IncomeTaxExpenseBenefit_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Total income taxes&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2,356,499&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,607,441&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--CurrentIncomeTaxExpenseBenefit_z3VCIfDA4USh" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Current income tax expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,993,182&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,197,888&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_zZKzGRevZ5u5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Deferred tax expense (recovery)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;363,317&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;409,553&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_zm04aIqHB76k" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Total income tax expense&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2,356,499&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,607,441&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">6650756</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">5190975</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Pure">0.3050</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Pure">0.3050</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <FSI:ExpectedIncomeTaxRecovery
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">2028481</FSI:ExpectedIncomeTaxRecovery>
    <FSI:ExpectedIncomeTaxRecovery
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1583247</FSI:ExpectedIncomeTaxRecovery>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">-29508</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-60470</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">-65027</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">603422</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationChangeInEnactedTaxRate
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">337961</us-gaap:IncomeTaxReconciliationChangeInEnactedTaxRate>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">-86696</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-120372</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">171288</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">-398386</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">2356499</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1607441</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">1993182</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1197888</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">363317</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">409553</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">2356499</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">1607441</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_895_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_z9nqjPHOeW29" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zpx4QTlaOwV8" style="display: none"&gt;SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Canada&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%; text-align: left; padding-left: 10pt"&gt;Non capital loss carryforwards&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z0OFHJOItPqc" style="width: 14%; text-align: right" title="Non capital loss carryforwards"&gt;1,443,371&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="width: 14%; text-align: right" title="Non capital loss carryforwards"&gt;1,638,357&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Intangible assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zGoz46ANdiY2" style="text-align: right" title="Intangible assets"&gt;19,849&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Intangible assets"&gt;18,863&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Property, equipment and leaseholds&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zRvbxhXcIHka" style="text-align: right" title="Property, equipment and leaseholds"&gt;587,408&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Property, equipment and leaseholds"&gt;624,016&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Financial instruments&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zBBMSCqbfQH7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Financial instruments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1515"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Financial instruments"&gt;26,690&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_ecustom--DeferredTaxAssetsLiabilitiesGross_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z91gA393M848" style="text-align: right" title="Deferred tax asset (liability)"&gt;2,050,628&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--DeferredTaxAssetsLiabilitiesGross_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pp0p0" style="text-align: right" title="Deferred tax asset (liability)"&gt;2,307,926&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Valuation allowance&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zZihIEpGnnei" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance"&gt;(2,050,628&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zgCKL5SSDBU6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance"&gt;(2,307,926&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Net deferred tax asset&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_ecustom--DeferredTaxAssetNet_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zlHzuZuMTp4j" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net Deferred tax asset"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1527"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_ecustom--DeferredTaxAssetNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net Deferred tax asset"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1529"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;US&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Net operating loss carryforwards&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z5DhnUchqwFi" style="text-align: right" title="Non capital loss carryforwards"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1531"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="text-align: right" title="Non capital loss carryforwards"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1533"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Intangible assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zxOsMADbQByl" style="text-align: right" title="Intangible assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1535"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="text-align: right" title="Intangible assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1537"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Investments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zLzZEBp3Fqkk" style="text-align: right" title="Investments"&gt;(241,880&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zcjysrhuJ5Ga" style="text-align: right" title="Investments"&gt;(167,635&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Property, equipment and leaseholds&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zAaup1v6dBGe" style="text-align: right" title="Property, equipment and leaseholds"&gt;(68,282&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="text-align: right" title="Property, equipment and leaseholds"&gt;(66,116&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif"&gt;Property, equipment and leaseholds&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zT8Pe4EomrTh" style="text-align: right" title="Property, equipment and leaseholds"&gt;12,697&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iI_pp0p0_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zXHE08whnfzc" style="text-align: right" title="Property, equipment and leaseholds"&gt;201,393&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Financial instruments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0IPCgahGEJ9" style="text-align: right" title="Financial instruments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1551"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--DeferredTaxAssetsDerivativeInstruments_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="text-align: right" title="Financial instruments"&gt;98,210&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Deferred tax asset not recognized&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--DeferredTaxAssetNotRecognized_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8fmlH1x77U6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1555"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_ecustom--DeferredTaxAssetNotRecognized_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1557"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Net deferred tax asset (liability)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_ecustom--DeferredTaxAssetLiabilitiesNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zG0di8pQy32d" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)"&gt;(297,465&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_ecustom--DeferredTaxAssetLiabilitiesNet_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)"&gt;65,852&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">1443371</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">1638357</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">19849</us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">18863</us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">587408</FSI:DeferredTaxAssetsPropertyPlantsAndEquipment>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">624016</FSI:DeferredTaxAssetsPropertyPlantsAndEquipment>
    <us-gaap:DeferredTaxAssetsDerivativeInstruments
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">26690</us-gaap:DeferredTaxAssetsDerivativeInstruments>
    <FSI:DeferredTaxAssetsLiabilitiesGross
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">2050628</FSI:DeferredTaxAssetsLiabilitiesGross>
    <FSI:DeferredTaxAssetsLiabilitiesGross
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">2307926</FSI:DeferredTaxAssetsLiabilitiesGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">2050628</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">2307926</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsInvestments
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">241880</us-gaap:DeferredTaxAssetsInvestments>
    <us-gaap:DeferredTaxAssetsInvestments
      contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">167635</us-gaap:DeferredTaxAssetsInvestments>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">-68282</FSI:DeferredTaxAssetsPropertyPlantsAndEquipment>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipment
      contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">-66116</FSI:DeferredTaxAssetsPropertyPlantsAndEquipment>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">12697</FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne
      contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">201393</FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne>
    <us-gaap:DeferredTaxAssetsDerivativeInstruments
      contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">98210</us-gaap:DeferredTaxAssetsDerivativeInstruments>
    <FSI:DeferredTaxAssetLiabilitiesNet
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">-297465</FSI:DeferredTaxAssetLiabilitiesNet>
    <FSI:DeferredTaxAssetLiabilitiesNet
      contextRef="AsOf2020-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">65852</FSI:DeferredTaxAssetLiabilitiesNet>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">6275526</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">6068054</us-gaap:OperatingLossCarryforwards>
    <FSI:ScheduleOfNonOperatingLossCarryforwardsTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_89B_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zwhwvsgTC2l7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B2_zZ7CVnDqFLHi" style="display: none"&gt;SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: center"&gt;`&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: right"&gt;Loss&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 66%; text-align: right"&gt;2029&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandTwentyNineTaxYearMember_zUIagJc2hIv6" style="width: 30%; text-align: right" title="Total"&gt;891,014&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: right"&gt;2030&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zS68ahb6bGNg" style="text-align: right" title="Total"&gt;1,081,844&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: right"&gt;2031&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneTaxYearMember_zR9uFe9AJ6hl" style="text-align: right" title="Total"&gt;1,245,577&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: right"&gt;2037&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenTaxYearMember_zHNRFAGUkS15" style="text-align: right" title="Total"&gt;2,238,533&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: right"&gt;2038&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyEightTaxYearMember_zKiQnMQuwq6h" style="text-align: right" title="Total"&gt;372,149&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: right"&gt;2039&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineTaxYearMember_zVw76eInNyE1" style="text-align: right" title="Total"&gt;72,378&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: right"&gt;2040&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyTaxYearMember_zsRdBU1IpPA7" style="text-align: right" title="Total"&gt;166,494&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: right; padding-bottom: 1.5pt"&gt;2041&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--TaxPeriodAxis__custom--TwoThousandFortyOneTaxYearMember_z483yRk4B1t1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;207,537&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center; padding-bottom: 1.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z3nu3wpmTcug" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;6,275,526&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</FSI:ScheduleOfNonOperatingLossCarryforwardsTableTextBlock>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_custom_TwoThousandTwentyNineTaxYearMember"
      decimals="0"
      unitRef="USD">891014</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_custom_TwoThousandThirtyTaxYearMember"
      decimals="0"
      unitRef="USD">1081844</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_custom_TwoThousandThirtyOneTaxYearMember"
      decimals="0"
      unitRef="USD">1245577</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_custom_TwoThousandThirtySevenTaxYearMember"
      decimals="0"
      unitRef="USD">2238533</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_custom_TwoThousandThirtyEightTaxYearMember"
      decimals="0"
      unitRef="USD">372149</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_custom_TwoThousandThirtyNineTaxYearMember"
      decimals="0"
      unitRef="USD">72378</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_custom_TwoThousandFortyTaxYearMember"
      decimals="0"
      unitRef="USD">166494</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_custom_TwoThousandFortyOneTaxYearMember"
      decimals="0"
      unitRef="USD">207537</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">6275526</us-gaap:OperatingLossCarryforwards>
    <us-gaap:EarningsPerShareTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_808_eus-gaap--EarningsPerShareTextBlock_zYQNjKmTfFu5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;15.
&lt;span&gt;Income Per Share &lt;span id="xdx_822_zzjzkGwbTqj2" style="display: none"&gt;INCOME PER SHARE&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zC5Qv9C2ZJIk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.3pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company presents both basic and diluted income per share on the face of its consolidated statements of income. Basic and diluted income
per share are calculated as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B5_zRKNSDA8fBZ7" style="display: none"&gt;SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_496_20210101__20211231_zTnaJD69jXL8" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20200101__20201231_zN7R8zCjus62" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--NetIncomeLoss_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Net income attributable to controlling interest&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;3,449,162&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;2,977,050&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Weighted average common shares outstanding:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zSgjzHebABCa" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Basic&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;12,316,254&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;12,240,641&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zK6trIznl7l1" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Diluted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;12,505,522&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;12,302,552&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Net income per common share attributable to controlling interest:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--EarningsPerShareBasicAndDiluted_pid_zmwdHaij9uWk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Basic and diluted&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;0.28&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;0.24&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AE_zeFuNgVgBEi5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Certain
stock options whose terms and conditions are described in Note 16, &#x201c;Stock Options&#x201d; could potentially dilute basic EPS in
the future, but were not included in the computation of diluted EPS because to do so would have been anti-dilutive. Those anti-dilutive
options are as follows.&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_898_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_ztagcukRm9sa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zBMAIldF5Ele" style="display: none"&gt;SCHEDULE OF ANTI-DILUTIVE OPTIONS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20210101__20211231_zYv5MGJZGD8a" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_494_20200101__20201231_zGLHq8pAQOuk" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Anti-dilutive options&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;21,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;507,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AF_zSDTZt07dEc8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;There
were &lt;span id="xdx_906_eus-gaap--PreferredStockSharesIssued_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zdxnaiYynTj7" title="Preferred stock, shares issued"&gt;&lt;span id="xdx_903_eus-gaap--PreferredStockSharesIssued_iI_pid_do_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zffwy9ewQZf6" title="Preferred stock, shares issued"&gt;&lt;span id="xdx_902_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zP04jOprSRI" title="Preferred stock, shares outstanding"&gt;&lt;span id="xdx_90E_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zfnGQ2H898ma" title="Preferred stock, shares outstanding"&gt;no&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; preferred shares issued and outstanding during the years ended December 31, 2021 or 2020.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zC5Qv9C2ZJIk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 35.3pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company presents both basic and diluted income per share on the face of its consolidated statements of income. Basic and diluted income
per share are calculated as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B5_zRKNSDA8fBZ7" style="display: none"&gt;SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_496_20210101__20211231_zTnaJD69jXL8" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20200101__20201231_zN7R8zCjus62" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--NetIncomeLoss_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Net income attributable to controlling interest&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;3,449,162&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;2,977,050&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Weighted average common shares outstanding:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zSgjzHebABCa" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Basic&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;12,316,254&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;12,240,641&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zK6trIznl7l1" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Diluted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;12,505,522&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;12,302,552&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Net income per common share attributable to controlling interest:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--EarningsPerShareBasicAndDiluted_pid_zmwdHaij9uWk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Basic and diluted&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;0.28&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;0.24&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">3449162</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">2977050</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Shares">12316254</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Shares">12240641</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Shares">12505522</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Shares">12302552</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasicAndDiluted
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.28</us-gaap:EarningsPerShareBasicAndDiluted>
    <us-gaap:EarningsPerShareBasicAndDiluted
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="USDPShares">0.24</us-gaap:EarningsPerShareBasicAndDiluted>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_898_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_ztagcukRm9sa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zBMAIldF5Ele" style="display: none"&gt;SCHEDULE OF ANTI-DILUTIVE OPTIONS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20210101__20211231_zYv5MGJZGD8a" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_494_20200101__20201231_zGLHq8pAQOuk" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Anti-dilutive options&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;21,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;507,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Shares">21000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Shares">507000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:PreferredStockSharesIssued
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="INF"
      unitRef="Shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="INF"
      unitRef="Shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="INF"
      unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="AsOf2020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="INF"
      unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_80B_eus-gaap--DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_zeWFW91uVtSi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;16. &lt;span&gt;Stock
Options&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;. &lt;b&gt;&lt;span id="xdx_82A_z8H87AP339g4" style="display: none"&gt;STOCK OPTIONS&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has a stock option plan (&#x201c;Plan&#x201d;). The purpose of this Plan is to provide additional incentives to key employees,
officers, directors and consultants of the Company and its subsidiaries in order to help attract and retain the best available personnel
for positions of responsibility and otherwise promote the success of the Company&#x2019;s business. It is intended that options issued
under this Plan constitute non-qualified stock options. The general terms of awards under the option plan are that &lt;span id="xdx_90B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_pid_dp_uPure_c20210101__20211231_z5B2k3Hf7cSg" title="Options granted percentage"&gt;100&lt;/span&gt;% of the options
granted will vest the year following the grant. The maximum term of options granted is &lt;span id="xdx_902_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_dtY_c20210101__20211231_zHI7wATrWLt5" title="Options maximum granted term"&gt;5&lt;/span&gt; years and the exercise price for all options
are issued for not less than fair market value at the date of the grant.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_899_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_znjS7O4MEt0d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes the Company&#x2019;s stock option activities for the years ended December 31, 2021 and 2020:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_zzIeDf6q4poh" style="display: none"&gt;SCHEDULE OF STOCK OPTION ACTIVITIES&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Number of shares&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Exercise &lt;br/&gt; price per share&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Weighted &lt;br/&gt; average &lt;br/&gt; exercise price&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20200101__20201231_zS2Rbc4KtpCa" style="width: 14%; text-align: right" title="Number of shares, Beginning Balance"&gt;635,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zOq9sd0lBBh" title="Exercise price per share, Beginning Balance"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zhfSMjkGhmFd" title="Exercise price per share, Beginning Balance"&gt;1.75&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20200101__20201231_zIDPQSsbtJyc" style="width: 14%; text-align: right" title="Weighted average exercise price, Beginning Balance"&gt;1.35&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231_zIsvPjNeS8f1" style="text-align: right" title="Number of shares, Granted"&gt;172,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20200101__20201231_zt1Hg13sVnx9" style="text-align: right" title="Exercise price per share, Granted"&gt;2.44&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_z6VdbbYVPvMc" style="text-align: right" title="Weighted average exercise price, Granted"&gt;2.44&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Cancelled or expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20200101__20201231_zzBWqgMuG00i" style="text-align: right" title="Number of shares, Cancelled or expired"&gt;(13,000&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zfVOUb3Odtr1" title="Exercise price per share, Cancelled or expired"&gt;2.44&lt;/span&gt; &#x2013; &lt;span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_znXBmOoBuE1j" title="Exercise price per share, Cancelled or expired"&gt;3.46&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zWsLMnDjH1o3" style="text-align: right" title="Weighted average exercise price, Cancelled or expired"&gt;2.75&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20200101__20201231_zGfonJxbp7V7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised"&gt;(45,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zcWkZ7vtwilh" title="Exercise price per share, Exercised"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zH2RFT5bz6Yd" title="Exercise price per share, Exercised"&gt;1.05&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zU0HGU9pN4qd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised"&gt;0.88&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_z8WhswlEmPn2" style="text-align: right" title="Number of shares, Beginning Balance"&gt;749,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zTzvjifCOc73" title="Exercise price per share, Beginning Balance"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zroR7IBAf8t5" title="Exercise price per share, Beginning Balance"&gt;4.13&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zsIC8HS7ywva" style="text-align: right" title="Weighted average exercise price, Beginning Balance"&gt;2.42&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_zCXLWRfEOJg1" style="text-align: right" title="Number of shares, Granted"&gt;170,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20210101__20211231_ztGhNRlwXHvb" style="text-align: right" title="Exercise price per share, Granted"&gt;3.61&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zprT2Hkh4erl" style="text-align: right" title="Weighted average exercise price, Granted"&gt;3.61&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Cancelled or expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zDsbJuSjxuGl" style="text-align: right" title="Number of shares, Cancelled or expired"&gt;(34,799&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90D_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_z7o32cI3BWpa" title="Exercise price per share, Cancelled or expired"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z9oLms0KgJce" title="Exercise price per share, Cancelled or expired"&gt;3.46&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zGa6kYbs1XHa" style="text-align: right" title="Weighted average exercise price, Cancelled or expired"&gt;2.30&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_zeXGPRJWWwXk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised"&gt;(94,701&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zl7vUN1Ys8Hf" title="Exercise price per share, Exercised"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zwczgqY1iu5h" title="Exercise price per share, Exercised"&gt;3.46&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zzEfYVu9ydZd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised"&gt;1.58&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20210101__20211231_znM7mTqiOJKk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Ending Balance"&gt;789,500&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zf5WJRS4gp32" title="Exercise price per share, Ending Balance"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_904_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zXEFq17pHWHf" title="Exercise price per share, Ending Balance"&gt;4.13&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20210101__20211231_zU6vMW1gdVk1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance"&gt;2.78&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Exercisable, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20210101__20211231_zuMK2aQovmDi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares Exercisable, Ending Balance"&gt;564,500&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zHBclOTtJGp1" title="Exercise price per share Exercisable, Ending Balance"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zBtXOLQ4ATdd" title="Exercise price per share Exercisable, Ending Balance"&gt;4.13&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_iE_pid_c20210101__20211231_zFkcSP8GMUNg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price Exercisable, Ending Balance"&gt;2.63&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


&lt;p id="xdx_8A0_zMsc0MKMWvRi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
weighted-average remaining contractual life of outstanding options is &lt;span id="xdx_90C_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_dtY_c20210101__20211231_zouuIHPC5Ul1" title="Weighted-average remaining contractual life"&gt;3.20&lt;/span&gt; years.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_894_eus-gaap--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_zuCejW6QIz39" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value of each option grant is calculated using the following weighted average assumptions:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zDrAqEWJzNQc" style="display: none"&gt;SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 85%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Expected life &#x2013; years&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_90D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_z1aOnTmciazd" title="Expected life - years"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20200101__20201231_zEFMk2orsHd" title="Expected life - years"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Interest rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_z39LuDBouI9j" style="text-align: right" title="Interest rate"&gt;1.23&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20200101__20201231_za5SBEjiZHHa" style="text-align: right" title="Interest rate"&gt;0.37&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Volatility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_ztcvnyZGjLJd" style="text-align: right" title="Volatility"&gt;63.28&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20200101__20201231_zC7tSSSdxbJ8" style="text-align: right" title="Volatility"&gt;70.14&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Weighted average fair value of options granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zHaABFnsUw32" style="text-align: right" title="Weighted average fair value of options granted"&gt;1.23&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20200101__20201231_zn7kRvqkujjh" style="text-align: right" title="Weighted average fair value of options granted"&gt;1.12&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A5_zRIBX5Q0wNX" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the year ended December 31, 2021, the Company granted &lt;span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zQ62JT4pM8j5" title="Stock options granted"&gt;45,000&lt;/span&gt; (2020 &#x2013; &lt;span id="xdx_909_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zwJa9cbyv8hh" title="Stock options granted"&gt;45,000&lt;/span&gt;) stock options to consultants and has applied ASC 718
using the Black-Scholes option-pricing model, which resulted in expenses of $&lt;span id="xdx_904_eus-gaap--StockOptionPlanExpense_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_ziV7vLRVYyme" title="Stock option expense"&gt;13,860&lt;/span&gt; (2020 - $&lt;span id="xdx_909_eus-gaap--StockOptionPlanExpense_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_pp0p0" title="Stock option expense"&gt;10,080&lt;/span&gt;). Options granted in other years
resulted in additional expenses of $&lt;span id="xdx_904_ecustom--AdditionalExpensesDueToOptionsGranted_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zUrqincI1B61" title="Additional expenses due to options granted"&gt;51,210&lt;/span&gt; (2020 &#x2013; $&lt;span id="xdx_909_ecustom--AdditionalExpensesDueToOptionsGranted_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_pp0p0" title="Additional expenses due to options granted"&gt;43,905&lt;/span&gt;). During the year ended December 31, 2021, employees were granted &lt;span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zgIImuFaXuSe" title="Stock options granted"&gt;125,000&lt;/span&gt;
(2020 &#x2013; &lt;span id="xdx_90E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_z8RjH5TJJs4g" title="Stock options granted"&gt;127,000&lt;/span&gt;) stock options, which resulted in expenses of $&lt;span id="xdx_901_eus-gaap--StockOptionPlanExpense_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zGSn9K0qXZ9d" title="Stock option expense"&gt;38,500&lt;/span&gt; (2020 &#x2013; $&lt;span id="xdx_904_eus-gaap--StockOptionPlanExpense_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_pp0p0" title="Stock option expense"&gt;28,316&lt;/span&gt;). Options granted in other years resulted
in additional expenses in the amount of $&lt;span id="xdx_909_ecustom--AdditionalExpensesDueToOptionsGranted_pp0p0_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_z7VNLET6Lrpi" title="Additional expenses due to options granted"&gt;106,542&lt;/span&gt; for employees during the year ended December 31, 2021 (2020 - $&lt;span id="xdx_90A_ecustom--AdditionalExpensesDueToOptionsGranted_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_pp0p0" title="Additional expenses due to options granted"&gt;73,711&lt;/span&gt;). There were &lt;span id="xdx_906_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zYb3BkHUBTnc" title="Stock options exercised"&gt;61,500&lt;/span&gt;
employee and &lt;span id="xdx_90B_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_ziOWcqpH7OS9" title="Stock options exercised"&gt;33,201&lt;/span&gt; consultant stock options exercised during the year ended December 31, 2021 (2020 &#x2013; &lt;span id="xdx_904_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zwAUSXuzCu11" title="Stock options exercised"&gt;35,000&lt;/span&gt; employee; &lt;span id="xdx_90D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zC62VFSkZHj6" title="Stock options exercised"&gt;10,000&lt;/span&gt;
consultant).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of December 31, 2021, there was approximately $&lt;span id="xdx_90A_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zq3zi5BiONr3" title="Compensation expense related to non-vested awards"&gt;229,918&lt;/span&gt; of compensation expense related to non-vested awards. This expense is expected
to be recognized over a weighted average period of &lt;span id="xdx_908_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_dtY_c20210101__20211231_zDJljnQaKsqi" title="Compensation expense related to non-vested awards, weighted average period"&gt;1.0&lt;/span&gt; years.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
aggregate intrinsic value of vested options outstanding at December 31, 2021 is $&lt;span id="xdx_905_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zshdH4mmQ2d" title="Aggregate intrinsic value of vested options"&gt;712,945&lt;/span&gt; (2020 &#x2013; $&lt;span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_pp0p0_dxL_c20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zDHSn9EB1FF" title="Aggregate intrinsic value of vested options::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1758"&gt;nil&lt;/span&gt;&lt;/span&gt;). The intrinsic value of
options exercised during the year was $&lt;span id="xdx_903_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_pp0p0_c20210101__20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zwpqNa9FJyih" title="Aggregate intrinsic value of vested options exercised"&gt;203,701&lt;/span&gt; (2020 - $&lt;span id="xdx_90B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_pp0p0_c20200101__20201231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z4dm0oFd29Ti"&gt;56,230&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Pure">1</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod contextRef="From2021-01-01to2021-12-31">P5Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_899_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_znjS7O4MEt0d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes the Company&#x2019;s stock option activities for the years ended December 31, 2021 and 2020:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B8_zzIeDf6q4poh" style="display: none"&gt;SCHEDULE OF STOCK OPTION ACTIVITIES&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Number of shares&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Exercise &lt;br/&gt; price per share&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Weighted &lt;br/&gt; average &lt;br/&gt; exercise price&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20200101__20201231_zS2Rbc4KtpCa" style="width: 14%; text-align: right" title="Number of shares, Beginning Balance"&gt;635,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zOq9sd0lBBh" title="Exercise price per share, Beginning Balance"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zhfSMjkGhmFd" title="Exercise price per share, Beginning Balance"&gt;1.75&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20200101__20201231_zIDPQSsbtJyc" style="width: 14%; text-align: right" title="Weighted average exercise price, Beginning Balance"&gt;1.35&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20200101__20201231_zIsvPjNeS8f1" style="text-align: right" title="Number of shares, Granted"&gt;172,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20200101__20201231_zt1Hg13sVnx9" style="text-align: right" title="Exercise price per share, Granted"&gt;2.44&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_z6VdbbYVPvMc" style="text-align: right" title="Weighted average exercise price, Granted"&gt;2.44&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Cancelled or expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20200101__20201231_zzBWqgMuG00i" style="text-align: right" title="Number of shares, Cancelled or expired"&gt;(13,000&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zfVOUb3Odtr1" title="Exercise price per share, Cancelled or expired"&gt;2.44&lt;/span&gt; &#x2013; &lt;span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_znXBmOoBuE1j" title="Exercise price per share, Cancelled or expired"&gt;3.46&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zWsLMnDjH1o3" style="text-align: right" title="Weighted average exercise price, Cancelled or expired"&gt;2.75&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20200101__20201231_zGfonJxbp7V7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised"&gt;(45,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MinimumMember_zcWkZ7vtwilh" title="Exercise price per share, Exercised"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20200101__20201231__srt--RangeAxis__srt--MaximumMember_zH2RFT5bz6Yd" title="Exercise price per share, Exercised"&gt;1.05&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20200101__20201231_zU0HGU9pN4qd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised"&gt;0.88&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_z8WhswlEmPn2" style="text-align: right" title="Number of shares, Beginning Balance"&gt;749,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zTzvjifCOc73" title="Exercise price per share, Beginning Balance"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zroR7IBAf8t5" title="Exercise price per share, Beginning Balance"&gt;4.13&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zsIC8HS7ywva" style="text-align: right" title="Weighted average exercise price, Beginning Balance"&gt;2.42&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_zCXLWRfEOJg1" style="text-align: right" title="Number of shares, Granted"&gt;170,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_pid_c20210101__20211231_ztGhNRlwXHvb" style="text-align: right" title="Exercise price per share, Granted"&gt;3.61&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zprT2Hkh4erl" style="text-align: right" title="Weighted average exercise price, Granted"&gt;3.61&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Cancelled or expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zDsbJuSjxuGl" style="text-align: right" title="Number of shares, Cancelled or expired"&gt;(34,799&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90D_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_z7o32cI3BWpa" title="Exercise price per share, Cancelled or expired"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z9oLms0KgJce" title="Exercise price per share, Cancelled or expired"&gt;3.46&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zGa6kYbs1XHa" style="text-align: right" title="Weighted average exercise price, Cancelled or expired"&gt;2.30&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_zeXGPRJWWwXk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised"&gt;(94,701&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zl7vUN1Ys8Hf" title="Exercise price per share, Exercised"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zwczgqY1iu5h" title="Exercise price per share, Exercised"&gt;3.46&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zzEfYVu9ydZd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised"&gt;1.58&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20210101__20211231_znM7mTqiOJKk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Ending Balance"&gt;789,500&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zf5WJRS4gp32" title="Exercise price per share, Ending Balance"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_904_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zXEFq17pHWHf" title="Exercise price per share, Ending Balance"&gt;4.13&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20210101__20211231_zU6vMW1gdVk1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance"&gt;2.78&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Exercisable, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20210101__20211231_zuMK2aQovmDi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares Exercisable, Ending Balance"&gt;564,500&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_909_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zHBclOTtJGp1" title="Exercise price per share Exercisable, Ending Balance"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zBtXOLQ4ATdd" title="Exercise price per share Exercisable, Ending Balance"&gt;4.13&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_iE_pid_c20210101__20211231_zFkcSP8GMUNg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price Exercisable, Ending Balance"&gt;2.63&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="AsOf2019-12-31" decimals="INF" unitRef="Shares">635000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice
      contextRef="AsOf2019-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">0.75</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice
      contextRef="AsOf2019-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">1.75</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2019-12-31"
      decimals="INF"
      unitRef="USDPShares">1.35</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Shares">172000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="USDPShares">2.44</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="USDPShares">2.44</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Shares">13000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice
      contextRef="From2020-01-012020-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">2.44</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice
      contextRef="From2020-01-012020-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">3.46</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="USDPShares">2.75</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Shares">45000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice
      contextRef="From2020-01-012020-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">0.75</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice
      contextRef="From2020-01-012020-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">1.05</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="USDPShares">0.88</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="AsOf2020-12-31" decimals="INF" unitRef="Shares">749000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice
      contextRef="AsOf2020-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">0.75</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice
      contextRef="AsOf2020-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">4.13</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2020-12-31"
      decimals="INF"
      unitRef="USDPShares">2.42</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Shares">170000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="USDPShares">3.61</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="USDPShares">3.61</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Shares">34799</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice
      contextRef="From2021-01-012021-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">1.42</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice
      contextRef="From2021-01-012021-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">3.46</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="USDPShares">2.30</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Shares">94701</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice
      contextRef="From2021-01-012021-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">0.75</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice
      contextRef="From2021-01-012021-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">3.46</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="USDPShares">1.58</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">789500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice
      contextRef="AsOf2021-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">1.42</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice
      contextRef="AsOf2021-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">4.13</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">2.78</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">564500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice
      contextRef="AsOf2021-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">1.42</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice
      contextRef="AsOf2021-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">4.13</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">2.63</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="From2021-01-01to2021-12-31">P3Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_894_eus-gaap--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_zuCejW6QIz39" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value of each option grant is calculated using the following weighted average assumptions:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zDrAqEWJzNQc" style="display: none"&gt;SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 85%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Expected life &#x2013; years&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_90D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_z1aOnTmciazd" title="Expected life - years"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20200101__20201231_zEFMk2orsHd" title="Expected life - years"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Interest rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_z39LuDBouI9j" style="text-align: right" title="Interest rate"&gt;1.23&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20200101__20201231_za5SBEjiZHHa" style="text-align: right" title="Interest rate"&gt;0.37&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Volatility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_ztcvnyZGjLJd" style="text-align: right" title="Volatility"&gt;63.28&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20200101__20201231_zC7tSSSdxbJ8" style="text-align: right" title="Volatility"&gt;70.14&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Weighted average fair value of options granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zHaABFnsUw32" style="text-align: right" title="Weighted average fair value of options granted"&gt;1.23&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20200101__20201231_zn7kRvqkujjh" style="text-align: right" title="Weighted average fair value of options granted"&gt;1.12&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="From2021-01-01to2021-12-31">P3Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="From2020-01-012020-12-31">P3Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Pure">0.0123</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Pure">0.0037</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="Pure">0.6328</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="Pure">0.7014</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2021-01-01to2021-12-31"
      decimals="INF"
      unitRef="USDPShares">1.23</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2020-01-012020-12-31"
      decimals="INF"
      unitRef="USDPShares">1.12</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2021-01-012021-12-31_custom_ConsultantsMember"
      decimals="INF"
      unitRef="Shares">45000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2020-01-012020-12-31_custom_ConsultantsMember"
      decimals="INF"
      unitRef="Shares">45000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:StockOptionPlanExpense
      contextRef="From2021-01-012021-12-31_custom_ConsultantsMember"
      decimals="0"
      unitRef="USD">13860</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="From2020-01-012020-12-31_custom_ConsultantsMember"
      decimals="0"
      unitRef="USD">10080</us-gaap:StockOptionPlanExpense>
    <FSI:AdditionalExpensesDueToOptionsGranted
      contextRef="From2021-01-012021-12-31_custom_ConsultantsMember"
      decimals="0"
      unitRef="USD">51210</FSI:AdditionalExpensesDueToOptionsGranted>
    <FSI:AdditionalExpensesDueToOptionsGranted
      contextRef="From2020-01-012020-12-31_custom_ConsultantsMember"
      decimals="0"
      unitRef="USD">43905</FSI:AdditionalExpensesDueToOptionsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2021-01-012021-12-31_custom_EmployeesMember"
      decimals="INF"
      unitRef="Shares">125000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2020-01-012020-12-31_custom_EmployeesMember"
      decimals="INF"
      unitRef="Shares">127000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:StockOptionPlanExpense
      contextRef="From2021-01-012021-12-31_custom_EmployeesMember"
      decimals="0"
      unitRef="USD">38500</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="From2020-01-012020-12-31_custom_EmployeesMember"
      decimals="0"
      unitRef="USD">28316</us-gaap:StockOptionPlanExpense>
    <FSI:AdditionalExpensesDueToOptionsGranted
      contextRef="From2021-01-012021-12-31_custom_EmployeesMember"
      decimals="0"
      unitRef="USD">106542</FSI:AdditionalExpensesDueToOptionsGranted>
    <FSI:AdditionalExpensesDueToOptionsGranted
      contextRef="From2020-01-012020-12-31_custom_EmployeesMember"
      decimals="0"
      unitRef="USD">73711</FSI:AdditionalExpensesDueToOptionsGranted>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-012021-12-31_custom_EmployeesMember"
      decimals="INF"
      unitRef="Shares">61500</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-012021-12-31_custom_ConsultantsMember"
      decimals="INF"
      unitRef="Shares">33201</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2020-01-012020-12-31_custom_EmployeesMember"
      decimals="INF"
      unitRef="Shares">35000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2020-01-012020-12-31_custom_ConsultantsMember"
      decimals="INF"
      unitRef="Shares">10000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">229918</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="From2021-01-01to2021-12-31">P1Y</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">712945</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="From2021-01-012021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">203701</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="From2020-01-012020-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">56230</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_808_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_z8XGhNlav3yl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;17. &lt;span&gt;Capital
Stock&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;. &lt;b&gt;&lt;span id="xdx_82A_z0i7qj6scvp8" style="display: none"&gt;CAPITAL STOCK&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the year ended December 31, 2021, &lt;span id="xdx_907_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__custom--EmployeesStockOptionMember_z6dnol2sk4C8" title="Stock options exercised"&gt;61,500&lt;/span&gt; shares were issued upon the exercise of employee stock options (2020 &#x2013; &lt;span id="xdx_90D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__us-gaap--DerivativeInstrumentRiskAxis__custom--EmployeesStockOptionMember_zOmvq8C2pskg" title="Stock options exercised"&gt;35,000&lt;/span&gt;) and &lt;span id="xdx_90E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__custom--ConsultantsStockOptionsMember_zkThfUnhqcvh" title="Stock options exercised"&gt;33,201&lt;/span&gt;
shares were issued upon the exercise of consultant stock options (2020 &#x2013; &lt;span id="xdx_90E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20200101__20201231__us-gaap--DerivativeInstrumentRiskAxis__custom--ConsultantsStockOptionsMember_zt4bcYOhrx96" title="Stock options exercised"&gt;10,000&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;On
March 19, 2020, the Company suspended the annual dividend until further notice due to the uncertainty surrounding the COVID-19 virus.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-012021-12-31_custom_EmployeesStockOptionMember"
      decimals="INF"
      unitRef="Shares">61500</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2020-01-012020-12-31_custom_EmployeesStockOptionMember"
      decimals="INF"
      unitRef="Shares">35000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-012021-12-31_custom_ConsultantsStockOptionsMember"
      decimals="INF"
      unitRef="Shares">33201</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2020-01-012020-12-31_custom_ConsultantsStockOptionsMember"
      decimals="INF"
      unitRef="Shares">10000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:MinorityInterestDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_800_eus-gaap--MinorityInterestDisclosureTextBlock_zG8yz2X2osTe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;18.
&lt;span&gt;Non-Controlling Interests &lt;b&gt;&lt;span id="xdx_825_zt15dL5UqNUf" style="display: none"&gt;NON-CONTROLLING INTERESTS&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;ENP
Investments is a limited liability corporation (LLC) that &lt;span style="background-color: white"&gt;manufactures and distributes golf, turf
and ornamental agriculture products in Mendota, Illinois.&lt;/span&gt; The Company owns a &lt;span id="xdx_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zTucbgQaqYm2" title="Subsidiary company ownership interest rate"&gt;65&lt;/span&gt;% interest in ENP Investments through its wholly-owned
subsidiary NanoChem. An unrelated party owns the remaining &lt;span id="xdx_900_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_z3RnYMwBq3e7" title="Related party owner ship percentage"&gt;35&lt;/span&gt;% interest in ENP Investments. As of December 31, 2020, ENP Mendota is a
wholly owned subsidiary of ENP Investments. ENP Mendota leases warehouse space. For financial reporting purposes, the assets, liabilities
and earnings of both of the LLC&#x2019;s are consolidated into these financial statements. The unrelated third party&#x2019;s ownership
interest in the LLC is recorded in non-controlling interests in these consolidated financial statements. The non-controlling interest
represents the non-controlling unitholder&#x2019;s interest in the earnings and equity of ENP Investments. ENP Investments is allocated
to the BCPA segment.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;ENP
Investments makes cash distributions to its equity owners based on formulas defined within its Ownership Interest Purchase Agreement
dated October 1, 2018. Distributions are defined in the Ownership Interest Purchase Agreement as cash on hand to the extent it exceeds
current and anticipated long-term and short-term needs, including, without limitation, needs for operating expenses, debt service, acquisitions,
reserves, and mandatory distributions, if any.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;From
the effective date of acquisition onward, the minimum distributions requirements under the Ownership Interest Purchase Agreement were
satisfied. The total distribution from the effective date of acquisition onward was $&lt;span id="xdx_90E_eus-gaap--PaymentsToMinorityShareholders_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zYUiWS0GgQGl" title="Partnership distribution to non-controlling interest"&gt;1,924,995&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89D_ecustom--ScheduleOfDistributionsTableTextBlock_zea70KsXuEaj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_z1sol5lcRGog" style="display: none"&gt;SCHEDULE OF DISTRIBUTIONS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_909_eus-gaap--MinorityInterest_iS_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zb5hPXiwTtN8" title="Distribution to noncontrolling interests, Beginning balance"&gt;2,550,149&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Distribution&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyvr3wsiDbD4" style="text-align: right" title="Distribution"&gt;(594,882&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Non-controlling interest share of income&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zv8cxceY2kad" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income"&gt;606,484&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--MinorityInterest_iS_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyrkhqvgJlk5" style="text-align: right" title="Distribution to noncontrolling interests, Beginning balance"&gt;2,561,751&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Distribution&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zBWbrMElBeSg" style="text-align: right" title="Distribution"&gt;(804,003&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Non-controlling interest share of income&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zpZmgpFeH8bl" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income"&gt;845,095&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--MinorityInterest_iE_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zbjMg473C1J5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Distribution to noncontrolling interests, Ending balance"&gt;2,602,843&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AC_zPfa6Sx7r0O2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the year ended December 31, 2021, the Company had sales of $&lt;span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpInvestmentMember_zkOaKJpxurN9" title="Revenue"&gt;4,877,690&lt;/span&gt; (2020 - $&lt;span id="xdx_90C_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpInvestmentMember_zXdhwtGzkgYl" title="Revenue"&gt;4,094,622&lt;/span&gt;) to the party that holds &lt;span id="xdx_908_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20211231__srt--OwnershipAxis__custom--EnpInvestmentMember_ziIju1KkX4oj" title="Equity Method Investment, Ownership Percentage"&gt;35&lt;/span&gt;% interest in ENP
Investments, of which $&lt;span id="xdx_906_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__srt--OwnershipAxis__custom--EnpInvestmentMember_ziIuvlMmHNe5" title="Accounts Receivable"&gt;2,215,119&lt;/span&gt; is included within Accounts Receivable as of December 31, 2021 (2020 &#x2013; $&lt;span id="xdx_90B_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20201231__srt--OwnershipAxis__custom--EnpInvestmentMember_zykCJi68W745" title="Accounts Receivable"&gt;2,056,631&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:MinorityInterestDisclosureTextBlock>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:MinorityInterestOwnershipPercentageByParent
      contextRef="AsOf2021-12-31_custom_EnpnvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.35</us-gaap:MinorityInterestOwnershipPercentageByParent>
    <us-gaap:PaymentsToMinorityShareholders
      contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember"
      decimals="0"
      unitRef="USD">1924995</us-gaap:PaymentsToMinorityShareholders>
    <FSI:ScheduleOfDistributionsTableTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_89D_ecustom--ScheduleOfDistributionsTableTextBlock_zea70KsXuEaj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B6_z1sol5lcRGog" style="display: none"&gt;SCHEDULE OF DISTRIBUTIONS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 80%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%"&gt;Balance, December 31, 2019&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span id="xdx_909_eus-gaap--MinorityInterest_iS_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zb5hPXiwTtN8" title="Distribution to noncontrolling interests, Beginning balance"&gt;2,550,149&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Distribution&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyvr3wsiDbD4" style="text-align: right" title="Distribution"&gt;(594,882&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Non-controlling interest share of income&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20200101__20201231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zv8cxceY2kad" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income"&gt;606,484&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Balance, December 31, 2020&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--MinorityInterest_iS_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zyrkhqvgJlk5" style="text-align: right" title="Distribution to noncontrolling interests, Beginning balance"&gt;2,561,751&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Distribution&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zBWbrMElBeSg" style="text-align: right" title="Distribution"&gt;(804,003&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Non-controlling interest share of income&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zpZmgpFeH8bl" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income"&gt;845,095&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance, December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--MinorityInterest_iE_pp0p0_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zbjMg473C1J5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Distribution to noncontrolling interests, Ending balance"&gt;2,602,843&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</FSI:ScheduleOfDistributionsTableTextBlock>
    <us-gaap:MinorityInterest
      contextRef="AsOf2019-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">2550149</us-gaap:MinorityInterest>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2020-01-012020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">594882</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="From2020-01-012020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">606484</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:MinorityInterest
      contextRef="AsOf2020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">2561751</us-gaap:MinorityInterest>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">804003</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">845095</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:MinorityInterest
      contextRef="AsOf2021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">2602843</us-gaap:MinorityInterest>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_EnpInvestmentMember"
      decimals="0"
      unitRef="USD">4877690</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2020-01-012020-12-31_custom_EnpInvestmentMember"
      decimals="0"
      unitRef="USD">4094622</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2021-12-31_custom_EnpInvestmentMember"
      decimals="INF"
      unitRef="Pure">0.35</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2021-12-31_custom_EnpInvestmentMember"
      decimals="0"
      unitRef="USD">2215119</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2020-12-31_custom_EnpInvestmentMember"
      decimals="0"
      unitRef="USD">2056631</us-gaap:AccountsReceivableNet>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_802_eus-gaap--SegmentReportingDisclosureTextBlock_zw2LWlr7dgqh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;19. &lt;span&gt;Segmented,
Significant Customer Information and Economic Dependency&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;. &lt;b&gt;&lt;span id="xdx_82D_zdr6NfUY1ZCk" style="display: none"&gt;SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company operates in two segments:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(a)
Energy and water conservation products (as shown under the column heading &#x201c;EWCP&#x201d; below), which consists of a (i) liquid swimming
pool blankets which saves energy and water by inhibiting evaporation from the pool surface, and (ii) food-safe powdered form of the active
ingredient within the liquid blankets and which are designed to be used in still or slow moving drinking water sources.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(b)
Biodegradable polymers (&#x201c;BCPA&#x2019;s&#x201d;), also known as TPA&#x2019;s, used by the petroleum, chemical, utility and mining industries
to prevent corrosion and scaling in water piping. This product can also be used in detergents to increase biodegradability and in agriculture
to increase crop yields by enhancing fertilizer uptake.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
accounting policies of the segments are the same as those described in Note 2, &lt;i&gt;Significant Accounting Policies&lt;/i&gt;. The Company evaluates
performance based on profit or loss from operations before income taxes, not including nonrecurring gains and losses and foreign exchange
gains and losses.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s reportable segments are strategic business units that offer different, but synergistic products and services. They are
managed separately because each business requires different technology and marketing strategies.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_898_eus-gaap--ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_z9JpYl8VfcX4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Year
ended December 31, 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BE_z0ESYCLHXiFc" style="display: none"&gt;SCHEDULE OF REPORTABLE SEGMENTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;EWCP&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;BCPA&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Consolidated&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; text-align: justify"&gt;Sales&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zbTIyQNLISx" style="width: 14%; text-align: right" title="Sales"&gt;420,811&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z2k9VpxaP1T8" style="width: 14%; text-align: right" title="Sales"&gt;33,995,524&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zFj3U5O0DhG7" style="width: 14%; text-align: right" title="Sales"&gt;34,416,335&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Interest expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zcx7l3qMsNa" style="text-align: right" title="Interest expense"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1817"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zeVOc9LVx5Ne" style="text-align: right" title="Interest expense"&gt;199,930&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zOjOtdFsRDSi" style="text-align: right" title="Interest expense"&gt;199,930&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Depreciation&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zc5IDI00Uh5e" style="text-align: right" title="Depreciation"&gt;40,247&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPBdp4HuUDv2" style="text-align: right" title="Depreciation"&gt;925,688&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJDPoEAHRAOf" style="text-align: right" title="Depreciation"&gt;965,935&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Current and deferred income tax expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJS9lIy0kfW" style="text-align: right" title="Current and deferred income tax expense"&gt;24,384&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zzz2lOtxWwVi" style="text-align: right" title="Current and deferred income tax expense"&gt;2,361,298&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zfsxliJ06Qg9" style="text-align: right" title="Current and deferred income tax expense"&gt;2,385,682&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;Segment profit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zXZBpTniEIE3" style="text-align: right" title="Segment profit"&gt;(368,994&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zUuBichGMrLe" style="text-align: right" title="Segment profit"&gt;3,818,156&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_ztiqPWrcCDJh" style="text-align: right" title="Segment profit"&gt;3,449,162&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Segment assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zoHbfr1qBjdk" style="text-align: right" title="Segment assets"&gt;1,929,537&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z3NIQmNJ6Nyf" style="text-align: right" title="Segment assets"&gt;37,621,733&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_ecustom--Segmentassets_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z1gbw8JexfB3" style="text-align: right" title="Segment assets"&gt;39,551,270&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Expenditures for segment assets&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pdp0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zp8NMpih4Rxe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1847"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zHDv4dYXQPZh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;782,219&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPPrOnJMOaw4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;782,219&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Year
ended December 31, 2020:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;EWCP&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;BCPA&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Consolidated&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; text-align: justify"&gt;Sales&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales"&gt;334,423&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales"&gt;31,073,031&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales"&gt;31,407,454&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Interest expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense"&gt;54&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense"&gt;260,603&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--InterestExpense_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense"&gt;260,657&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Depreciation&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation"&gt;41,969&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation"&gt;809,703&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--DepreciationNonproduction_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation"&gt;851,672&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Current and deferred income tax expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense"&gt;121,164&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense"&gt;1,486,277&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense"&gt;1,607,441&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;Segment profit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit"&gt;(536,220&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit"&gt;3,513,270&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ProfitLoss_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit"&gt;2,977,050&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Segment assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets"&gt;2,111,501&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets"&gt;32,975,887&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_ecustom--Segmentassets_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets"&gt;35,087,388&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Expenditures for segment assets&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1889"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;1,071,108&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;1,071,108&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AE_zUzkHsIuUrlk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89F_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zGJ4aCueOhLa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Sales
by territory are shown below:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BB_z5CCCs7BAQ47" style="display: none"&gt;SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%"&gt;Canada&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--CA_zgjIwDWnm8O8" style="width: 14%; text-align: right" title="Sales"&gt;525,900&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" style="width: 14%; text-align: right" title="Sales"&gt;562,626&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;United States and abroad&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zJeRCfzX6ti" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales"&gt;33,890,435&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales"&gt;30,844,828&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231_zt1EE3Tz0lNb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales"&gt;34,416,335&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales"&gt;31,407,454&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A1_zlQZLvFtBoGc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89B_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zpIZcCRVBrV9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s long-lived assets (property, equipment, intangibles, goodwill, leaseholds, patents and right of use assets) are located
in Canada and the United States as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B9_zQh1ee9jBluj" style="display: none"&gt;SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%"&gt;Canada&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--CA_zrJKWXVr4Fc" style="width: 14%; text-align: right" title="Long-lived assets"&gt;191,752&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" style="width: 14%; text-align: right" title="Long-lived assets"&gt;445,663&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;United States&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--US_z2dur2RGH2d6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets"&gt;10,105,202&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--US_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets"&gt;10,519,903&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231_zlD9rPf2jJ19" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets"&gt;10,296,954&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--NoncurrentAssets_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets"&gt;10,965,566&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AC_z0ucIFVIoM69" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Three
customers accounted for $&lt;span id="xdx_902_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_z0VRy0Ab9mH" title="Accounts receivable"&gt;16,917,948&lt;/span&gt; (&lt;span id="xdx_90B_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zDHstQhStsG6" title="Accounted risk percentage"&gt;49&lt;/span&gt;%) of sales made in 2021 (2020 - $&lt;span id="xdx_902_eus-gaap--AccountsReceivableNet_c20201231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_pp0p0" title="Accounts receivable"&gt;14,713,127&lt;/span&gt; or &lt;span id="xdx_909_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20200101__20201231__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zdPxFNUcYzc5"&gt;47&lt;/span&gt;%).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_898_eus-gaap--ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_z9JpYl8VfcX4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Year
ended December 31, 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BE_z0ESYCLHXiFc" style="display: none"&gt;SCHEDULE OF REPORTABLE SEGMENTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;EWCP&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;BCPA&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Consolidated&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; text-align: justify"&gt;Sales&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zbTIyQNLISx" style="width: 14%; text-align: right" title="Sales"&gt;420,811&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z2k9VpxaP1T8" style="width: 14%; text-align: right" title="Sales"&gt;33,995,524&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zFj3U5O0DhG7" style="width: 14%; text-align: right" title="Sales"&gt;34,416,335&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Interest expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zcx7l3qMsNa" style="text-align: right" title="Interest expense"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1817"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zeVOc9LVx5Ne" style="text-align: right" title="Interest expense"&gt;199,930&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--InterestExpense_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zOjOtdFsRDSi" style="text-align: right" title="Interest expense"&gt;199,930&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Depreciation&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zc5IDI00Uh5e" style="text-align: right" title="Depreciation"&gt;40,247&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPBdp4HuUDv2" style="text-align: right" title="Depreciation"&gt;925,688&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--DepreciationNonproduction_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJDPoEAHRAOf" style="text-align: right" title="Depreciation"&gt;965,935&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Current and deferred income tax expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zJS9lIy0kfW" style="text-align: right" title="Current and deferred income tax expense"&gt;24,384&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zzz2lOtxWwVi" style="text-align: right" title="Current and deferred income tax expense"&gt;2,361,298&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zfsxliJ06Qg9" style="text-align: right" title="Current and deferred income tax expense"&gt;2,385,682&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;Segment profit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zXZBpTniEIE3" style="text-align: right" title="Segment profit"&gt;(368,994&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zUuBichGMrLe" style="text-align: right" title="Segment profit"&gt;3,818,156&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ProfitLoss_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_ztiqPWrcCDJh" style="text-align: right" title="Segment profit"&gt;3,449,162&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Segment assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zoHbfr1qBjdk" style="text-align: right" title="Segment assets"&gt;1,929,537&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_ecustom--Segmentassets_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z3NIQmNJ6Nyf" style="text-align: right" title="Segment assets"&gt;37,621,733&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_ecustom--Segmentassets_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_z1gbw8JexfB3" style="text-align: right" title="Segment assets"&gt;39,551,270&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Expenditures for segment assets&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pdp0_c20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zp8NMpih4Rxe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1847"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zHDv4dYXQPZh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;782,219&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_pp0p0_c20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_zPPrOnJMOaw4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;782,219&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Year
ended December 31, 2020:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;EWCP&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;BCPA&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Consolidated&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 46%; text-align: justify"&gt;Sales&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales"&gt;334,423&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales"&gt;31,073,031&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="width: 14%; text-align: right" title="Sales"&gt;31,407,454&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Interest expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense"&gt;54&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--InterestExpense_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense"&gt;260,603&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--InterestExpense_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Interest expense"&gt;260,657&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Depreciation&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation"&gt;41,969&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--DepreciationNonproduction_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation"&gt;809,703&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--DepreciationNonproduction_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Depreciation"&gt;851,672&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Current and deferred income tax expense&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense"&gt;121,164&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense"&gt;1,486,277&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--IncomeTaxExpenseBenefit_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Current and deferred income tax expense"&gt;1,607,441&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&gt;Segment profit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit"&gt;(536,220&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ProfitLoss_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit"&gt;3,513,270&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ProfitLoss_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment profit"&gt;2,977,050&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: justify"&gt;Segment assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets"&gt;2,111,501&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--Segmentassets_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets"&gt;32,975,887&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_ecustom--Segmentassets_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="text-align: right" title="Segment assets"&gt;35,087,388&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Expenditures for segment assets&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pdp0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1889"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__srt--ProductOrServiceAxis__custom--BCPAMember__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;1,071,108&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_c20200101__20201231__us-gaap--StatementBusinessSegmentsAxis__us-gaap--CorporateAndOtherMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Expenditures for segment assets"&gt;1,071,108&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">420811</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">33995524</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">34416335</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:InterestExpense
      contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">199930</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">199930</us-gaap:InterestExpense>
    <us-gaap:DepreciationNonproduction
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">40247</us-gaap:DepreciationNonproduction>
    <us-gaap:DepreciationNonproduction
      contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">925688</us-gaap:DepreciationNonproduction>
    <us-gaap:DepreciationNonproduction
      contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">965935</us-gaap:DepreciationNonproduction>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">24384</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">2361298</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">2385682</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">-368994</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">3818156</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">3449162</us-gaap:ProfitLoss>
    <FSI:Segmentassets
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">1929537</FSI:Segmentassets>
    <FSI:Segmentassets
      contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">37621733</FSI:Segmentassets>
    <FSI:Segmentassets
      contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">39551270</FSI:Segmentassets>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">782219</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">782219</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">334423</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">31073031</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">31407454</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:InterestExpense
      contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">54</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">260603</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">260657</us-gaap:InterestExpense>
    <us-gaap:DepreciationNonproduction
      contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">41969</us-gaap:DepreciationNonproduction>
    <us-gaap:DepreciationNonproduction
      contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">809703</us-gaap:DepreciationNonproduction>
    <us-gaap:DepreciationNonproduction
      contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">851672</us-gaap:DepreciationNonproduction>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">121164</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">1486277</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">1607441</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">-536220</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">3513270</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">2977050</us-gaap:ProfitLoss>
    <FSI:Segmentassets
      contextRef="From2020-01-012020-12-31_custom_EWCPMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">2111501</FSI:Segmentassets>
    <FSI:Segmentassets
      contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">32975887</FSI:Segmentassets>
    <FSI:Segmentassets
      contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">35087388</FSI:Segmentassets>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2020-01-012020-12-31_custom_BCPAMember_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">1071108</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2020-01-012020-12-31_us-gaap_CorporateAndOtherMember"
      decimals="0"
      unitRef="USD">1071108</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_89F_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zGJ4aCueOhLa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Sales
by territory are shown below:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BB_z5CCCs7BAQ47" style="display: none"&gt;SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%"&gt;Canada&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--CA_zgjIwDWnm8O8" style="width: 14%; text-align: right" title="Sales"&gt;525,900&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" style="width: 14%; text-align: right" title="Sales"&gt;562,626&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;United States and abroad&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zJeRCfzX6ti" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales"&gt;33,890,435&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231__srt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales"&gt;30,844,828&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231_zt1EE3Tz0lNb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales"&gt;34,416,335&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20200101__20201231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Sales"&gt;31,407,454&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_country_CA"
      decimals="0"
      unitRef="USD">525900</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2020-01-012020-12-31_country_CA"
      decimals="0"
      unitRef="USD">562626</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_UnitedStatesandAbroadMember"
      decimals="0"
      unitRef="USD">33890435</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2020-01-012020-12-31_custom_UnitedStatesandAbroadMember"
      decimals="0"
      unitRef="USD">30844828</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-01to2021-12-31"
      decimals="0"
      unitRef="USD">34416335</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2020-01-012020-12-31"
      decimals="0"
      unitRef="USD">31407454</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_89B_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zpIZcCRVBrV9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s long-lived assets (property, equipment, intangibles, goodwill, leaseholds, patents and right of use assets) are located
in Canada and the United States as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B9_zQh1ee9jBluj" style="display: none"&gt;SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 90%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2020&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%"&gt;Canada&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--CA_zrJKWXVr4Fc" style="width: 14%; text-align: right" title="Long-lived assets"&gt;191,752&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--CA_pp0p0" style="width: 14%; text-align: right" title="Long-lived assets"&gt;445,663&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;United States&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231__srt--StatementGeographicalAxis__country--US_z2dur2RGH2d6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets"&gt;10,105,202&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--NoncurrentAssets_c20201231__srt--StatementGeographicalAxis__country--US_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets"&gt;10,519,903&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--NoncurrentAssets_iI_pp0p0_c20211231_zlD9rPf2jJ19" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets"&gt;10,296,954&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--NoncurrentAssets_c20201231_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-lived assets"&gt;10,965,566&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock>
    <us-gaap:NoncurrentAssets
      contextRef="AsOf2021-12-31_country_CA"
      decimals="0"
      unitRef="USD">191752</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="AsOf2020-12-31_country_CA"
      decimals="0"
      unitRef="USD">445663</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="AsOf2021-12-31_country_US"
      decimals="0"
      unitRef="USD">10105202</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="AsOf2020-12-31_country_US"
      decimals="0"
      unitRef="USD">10519903</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">10296954</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">10965566</us-gaap:NoncurrentAssets>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2021-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember"
      decimals="0"
      unitRef="USD">16917948</us-gaap:AccountsReceivableNet>
    <FSI:StockOptionExercisePercent
      contextRef="From2021-01-012021-12-31_custom_ThreeCustomersMember"
      decimals="INF"
      unitRef="Pure">0.49</FSI:StockOptionExercisePercent>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2020-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember"
      decimals="0"
      unitRef="USD">14713127</us-gaap:AccountsReceivableNet>
    <FSI:StockOptionExercisePercent
      contextRef="From2020-01-012020-12-31_custom_ThreeCustomersMember"
      decimals="INF"
      unitRef="Pure">0.47</FSI:StockOptionExercisePercent>
    <us-gaap:SubsequentEventsTextBlock contextRef="From2021-01-01to2021-12-31">&lt;p id="xdx_80C_eus-gaap--SubsequentEventsTextBlock_z7yV2ORWwlb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;20.
&lt;span&gt;Subsequent Events. &lt;b&gt;&lt;span id="xdx_825_zSTU0yR6baNa" style="display: none"&gt;SUBSEQUENT EVENTS&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company granted &lt;span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20220329__srt--TitleOfIndividualAxis__custom--EmployeeMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zM8AjQZMW3Ue" title="Stock options granted"&gt;5,000&lt;/span&gt; stock options to an employee and issued &lt;span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20220329__srt--TitleOfIndividualAxis__custom--EmployeeMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--TypeOfArrangementAxis__custom--UponExerciseofStockOptionsMember_zAkOEac91P1c" title="Stock options granted"&gt;20,500
&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;shares to employees upon the exercise of
stock options in the three months ended March 29, 2022.&lt;/span&gt;&lt;/p&gt;

</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2022-01-012022-03-29_custom_EmployeeMember_us-gaap_SubsequentEventMember"
      decimals="INF"
      unitRef="Shares">5000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2022-01-012022-03-29_custom_EmployeeMember_us-gaap_SubsequentEventMember_custom_UponExerciseofStockOptionsMember"
      decimals="INF"
      unitRef="Shares">20500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>100
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M.-]<<Q9PF5T YY="Z/U.=H/#YZ>;_P!02P,$%     @ .7"M5.GB>5(@!P
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
MN0G7S>$QCM\DU&5M3QJU@BZ3=SFHZ@Y/1AS>&+T;'BY8:&/T=GBY47*I.FL
MWZ\T(&%\8P<X/I]R]5]02P,$%     @ .7"M5$15'RR_"   !B4  !@   !X
M;"]W;W)K<VAE971S+W-H965T-2YX;6RMFEESX[@1Q[\*2I6'F:KUB+AXN&Q7
M^9A)IFIVX[*SR3--0A8S%*$%*=G>3Y\&20D2<<A.,@]C46J _\;1OVZ0%R]2
M_6R70G3H=54W[>5LV77K\_F\+99BE;=?Y%HT\,M"JE7>P:5ZGK=K)?*R;[2J
MYR2*XODJKYK9U47_W;VZNI";KJX:<:]0NUFM<O5V(VKY<CG#L]T7#]7SLM-?
MS*\NUOFS>!3=[^M[!5?S?2]EM1)-6\D&*;&XG%WC\UO>-^@M_EF)E_;@,]*N
M/$GY4U]\+R]GD58D:E%TNHL<_FS%K:AKW1/H^&/L=+:_IVYX^'G7^[?>>7#F
M*6_%K:S_597=\G*6SE I%OFF[A[DR]_$Z!#7_16R;OO_T<M@&[,9*C9M)U=C
M8U"PJIKA;_XZ#L1! QQ[&I"Q 9DV\-V!C@UH[^B@K'?K+N_RJPLE7Y#2UM";
M_M"/3=\:O*D:/8V/G8)?*VC77=W*II5U5>:=*-%C!W]@CKH6R06ZS=LE^@;S
MW*(S]/OC'?KTE\\7\PYNJIO.B_$&-\,-B.<&F*!?9=,M6_2U*45YW,$<U.XE
MDYWD&Q+L\4X47Q#%OR 2$>P0=/O^YE% #MV/(.W[HY[^_KX6*N^JYGE8DE57
MB3;0+=MWR_INF:?;WV +5TTA5P+!9D7=4J WD2O7! P=\;XCO6VW5XQDC/#D
M8KX]'!?;CO*4<LKV=D=*^5XI#P[ =?EO6*?#LNDD[.U"-D55"]08%^![?57
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
MPYCT?N19(6X&&RFWKT<CL=RP/!&O^)85ZILU+_-$JL/R<22V)4M6=5">C1
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
M@J98-$+?A?3I?L\.Z>PP);F,W.VSB;%D9!>U[Y.'Z_N]L+%?PY:44(VBR%,
MH%$YIY;I5'!4FD<P?C2\P)0!@,2^U!>L<GO!S2@+/D8M*=86[!:-)+_V@MP'
M-1D70D43^+;SYPF4U@^8)X&.A=K;?;+Y/;:UA@_0<AH47+:C' I2JW_;C&.4
M:E!$;SC8X:@5L;FR=%%)./0;.816M2!$;EN2P DFM=7_,)WX7>4G/G-$80Z"
M' !WP'N_CU)D"V>KZ BJL()WL*CMDM Q#LY">Z%$SCX?)% *Q4Q6* 502^FJ
M&AW;*)"@+Z_0L:#+.1NWD\AU*",7D<,4SEK5=%ZK4&Z9(H.S6C95WM5CGH(3
M4H$#2E(A,/FIPEL8Y%T,/9(L*!*=EY1<4Z*Q Z1T,<X412)2!:$5J2N<K=E&
M22UBNK+6J:VN1(85<DFL+"WNT;4%T[PQPFU0!_!F2>,BCQ1I*N(*0=IR)&*O
MI4?<E(B@$6D 9T*M5 K0K[S)PMHRHQ /:'Z>>:FHETZUW$<(>6@IWKV,+(_9
M740'H^T,V^<<*^KCMEZ-19]D-.M5[#+('*;82KD&/L4FN:!DZ T#?BP)T"7V
M"'=Y]^WVZF#T1TNZG*%S4Q$"%^1B3UJ3XW$M9J5$QRT1=;@./PDTR?/% ILH
MY"6\M95J:V<WEK=5Q!W&<)H2V&BU:"VUW$+N6@4%$YBKB(PAIVDYV'I=\;92
M"QZ[0H#MS)<6U;:4\#AU0='NE\BFP*9OP'^L U! O%@B8L[08(;TDK@?9ZJE
MKA=H*3'Q(G;JV+=C%9)A(ZE](=X;HB#2'3V9-QZ+CO=YMG,8;K1MR+K6R;A\
MV-AND[W%?OM)Q!)-.R[B2$PFMG)MHG:A0%@:\V@0*,8)"<XT%+(T3NDS^C;:
MD?=Q28AC1BL^!WKB<T7MB31K:99(:BQT5+^CBDU&O=R.X;A2]=ESN^1@;T.O
MJ)KH=PC:"RU<:5GO;KN?.I.TX>_$T^^D+]PMJ?*U7.#IL/_^N,=<^NV1#L'6
M<=^?VX#LQC]!22$=">#[PJ)WM <RT/T //\/4$L#!!0    ( #EPK51_%TZ:
MR!L  &U1   8    >&PO=V]R:W-H965T<R]S:&5E=#@N>&ULK5Q;;]M(EGZO
M7U'(SBQL@%9LQ[EUN@,D3C)M()UDVLG,PV(?*+(DL4.1:A9I1_/K]WSGU(T4
M[606 TQ/+*DNYWXG?[YMNZ]V8TROOVWKQO[R8-/WNY\>/K3%QFQSNVAWIJ%?
M5FVWS7OZV*T?VEUG\I(W;>N'YZ>G3QYN\ZIY\/)G_NY3]_+G=NCKJC&?.FV'
M[3;O]J]-W=[^\N#L@?_B]VJ]Z?'%PY<_[_*UN3;]E]VGCCX]#*>4U=8TMFH;
MW9G5+P]>G?WT^@+K><$_*G-KD[\U,%FV[5=\N"I_>7 *@$QMBAXGY/3/C;DT
M=8V#"(P_W9D/PI78F/[M3W_'N!,NR]R:R[;^9U7VFU\>/'N@2[/*A[K_O;W]
MU3A\'N.\HJTM_[^^E;6/SA_H8K!]NW6;"8)MU<B_^3='AV3#L],[-IR[#><,
MMUS$4+[)^_SESUU[JSNLIM/P!Z/*NPFXJ@%3KON.?JUH7__R^NIO'Z[>75V^
M^O!9O[J\_/CEP^>K#W_3GSZ^O[J\>GO]\\.>+L'2AX4[\+4<>'['@6?G^K>V
MZ3=6OVU*4XX/>$C0!1#//8BOS^\]\8TI%OK16:;/3\_/[CGO44#Y$9_WZ([S
M7A5%.S1]U:SUI[:NBLI8_3^OEK;O2$3^]YX++L(%%WS!Q7^.IO<>",7\R>[R
MPOSR@#3/FN[&/'AYOE#7U;JI5E61-[V>P^H[@.C/&SI,%6UC:4>9]Z;4JZK)
MFZ+*:VU[^H+4K[=ZD]\8O32FT73]+N]H'11*;RJ2SX[NKW71VA[J4=E,FV^%
MV?7Z=F,ZH]N>_KFMK-%-2Q=DNH(J%FU7TCV&I+W?\&>!7>VZBJ[?U03]VC2F
MR^MZC]_I0+J5]M)Q^DM3X=,U(+0ZW^T(WWQ9&]VW!-6Z!1$(J\)T=%=3PGC
M"O#>G2>.LU E(4:6::&/\F-UF=L-[^ _WOXY5#=YS20@4JG+=KO+FSV.ME5I
M.KJZKHD(ZPW!6%>T&A#>&-L+V79#5VS(8I0.RT83L=9$X)K^(*!@,P$JV9:A
MJ_J];E>:$+<$9PY$.V/T5G0I%^#!(T6K_,E >&ET 6A-A':A R+3GS1Q3^/B
M/F?D&3)K;D#IA/E58_NJ'V XZ;2CY;&Z(L0:<!L4!X7 < +E.@>O4O(08![X
M_ ]"M*AS:T'P%5,'A^Q_(B)NB<M@X[IM2Y(:6&\P>->UZPY48,[EMR"/Z0@H
M^<8.8+<AJ*X:IK\[/@N'TX\*6+( EYYTQ&/3 0:65)S4D,LC/U97_V+9(0(-
M9@%,M,<DEZMX_ZKJ;']2-9G[B\0'7+QELX]K0,*UD>/A+(<Z-XKXDX %],IJ
MM2*]((VUPY+$J,H[QL;3TS(]20GJH30B8>8;N>"2V-')+T/7B2XL25G6D"
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
M@=J$GDIZ"<2U;?[5)#T%+CV0Q&Q'EML)<ZAX@&;.%!$RL<JDTRI3TMI,4LF
MMII%&X?<=4\(?9/JDTTK [$<X_7V5=%S==S8H>YA3H:Z=)TZ%@^*]4F#)OC?
M\JJ*#&- 6K:SCIHNC\K"0>(*^?<B,IQ3#/84]=X5^0,]Q7*[G@MB.'0HG%,E
MZ>(*&V<)-DF.V*!$$#N3.'(]LE2C(%M-]]RPZ7:E$ZX=#"CDN[W6\1EA5C*
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
MQP]D9M9_Z-L=OU!OV?9DDOA/O*?(=%A OZ_:MO<?<$%XP^++_P-02P,$%
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
M+W=O<FMS:&5E=',O<VAE970Q,BYX;6RM5MMNXS80?==7#-RB3T1,\2*2:6+
MB;W8!9*-FV1;%$4?%)FVA95$+T7%R=]W*%_666RR1=$7\38\<V;.4.39QOG/
M[<K: $]UU;3G@U4(Z]/AL"U6ML[;$[>V#:XLG*_S@$._'+9K;_-YOZFNAHS2
M;%CG93,8G?5S,S\Z<UVHRL;./+1=7>?^^<)6;G,^2 ?[B=MRN0IQ8C@Z6^=+
M>V?#I_7,XVAX0)F7M6W:TC7@[>)\,$Y/+T2T[PU^+^VF/>I#C.3!N<]Q\&%^
M/J"1D*UL$2)"CLVCO;15%8&0QI<=YN#@,FX\[N_1W_6Q8RP/>6LO7?5'.0^K
M\X$>P-PN\JX*MV[SWN[BD1&O<%7;?V&SM17HL>C:X.K=9AS79;-M\Z=='HXV
M:/K*!K;;P'K>6T<]RTD>\M&9=QOPT1K18J</M=^-Y,HFBG(7/*Z6N"^,9K<W
ML^GM_9\$IK]]^C"[GGZ\A_''"5Q-QW?3]S=7D[NS84 _T7I8[# OMICL%<R4
MP;5KPJJ%:3.W\Y< 0R1X8,GV+"_8FX@36YP 3PDPRM(W\/@A:M[C\=>B]EC5
M/CP3F%5Y$R!OYC#]TI5K++< ?XT?VN"Q7OY^PY4XN!*]*_&_)OA-S'A03]MU
M7MCS 9[$UOI'.QAE)\G7L+X&$T.[LEBW*U?-6_@Q';B[?#^=?+J:PLV[?V&>
M1$E@7!1=W55YL/->H^32M0$F%ND59=Z?OX\V)!==6<W+9MGVM,IZ[=VCC31;
M^!D$T8P3137V&3&:$ZD-]E.B!25I:I)QA\?!/925;2$U&6%2@DJQT9 R08Q1
MZ+=>=\%Z6.5^OLF]!<%)1B4(1H3,$"P5)GG7^:8,':Y&'HOR*?81DU.213":
MD92F@)A2JN1FL2@+"_:04V2D6(3J_:OD.F^Z!=9+YS&V([N,Z$P190S&EB+1
M#'L,OQ&=)O<^QT@\&"(R#HI('C$-3Y,+EP?@@@A*@6&86H#&!&3)0<B7N=.Z
M)[1K?OE)LY3]FMS;8M6XRBV?,2"D(<VAW9M<Q? 9>J),[2?WXP0SSY"4)B*-
MDBA,8X;RR%XJI$E4RJ/Z]%OUZ7]37QE-N**]^IICC@3KU3<9(XSIE^IK2@S*
MF:'Z&:J:&DPK_;[ZTG 0"",5@F4\>U7]-!:'Q"1AJS/4Q4CS7?$S 4:EH U_
M0_I4HH!, A)06-9"8U@2:6=*'4O/&-IF2N*J$NJE]**O\)1&6C_27A&&TF"
MF?I6>6;DH7VAO)",<',HA_TX*H_YTI%1BA)D_0%4-$HCHRR$XORX=ET3$K?
M2_!(:/N$[X76 KX7^C_!:2P=3( P"C)I".,<)GVVDK"R\&QS#S9>$U@OA:T?
M,"O['ST!?L+Q '#"-07..='Q *'6'"N2*8T\* A!.*<@)=%8V<H0F:(G3%VT
MP:K"?PBFV5#XWL]\>'1SUM8O^_=!"T4,;7N)'F8/3Y#Q]N;]:KY]OUSG?EDV
M+51V@5OIB9(#\-LWP780W+J_AQ]<P$+NNRM\1ED?#7!]X5S8#Z*#P\-L] ]0
M2P,$%     @ .7"M5/8;BACV @  (08  !D   !X;"]W;W)K<VAE971S+W-H
M965T,3,N>&ULE55=;QH[$'WG5XQ6?>2R7R00!$@;V+9(38("::M6]\'L#F#5
M:U/;FTWNK[_C7=@2*8G4%VR/YYPY,^L9QI72O\P>T<)3(:29>'MK#R/?-]D>
M"V9ZZH"2;K9*%\S24>]\<]#(\AI4"#\*@DN_8%QZTW%M6^KI6)56<(E+#:8L
M"J:?KU&H:N*%WLEPSW=[ZPS^='Q@.URA?3@L-9W\EB7G!4K#E02-VXF7A*/K
MOO.O';YRK,S9'EPF&Z5^N<,BGWB!$X0",^L8&"V/.$,A'!')^'WD]-J0#GB^
M/[%_K'.G7#;,X$R);SRW^XDW]"#'+2N%O5?59SSF<^'X,B5,_0M5XWL1>Y"5
MQJKB""8%!9?-RIZ.=3@##(,W -$1$-6ZFT"URCFS;#K6J@+MO(G-;>I4:S2)
MX])]E)75=,L)9Z?+9)W>KE=CWQ*9,_G9$7C= *,W@&$$-TK:O8%4YIB_)/!)
M12LE.DFYCMYEG&/6@SCL0A1$X3M\<9M:7//%;_!]4BJON!# 9 X+:9G<\8U
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
M1AI;E+Z;VU<0E0NPZULIS7'@-FC?U>0-4$L#!!0    ( #EPK52KB)!@=08
M -(/   9    >&PO=V]R:W-H965T<R]S:&5E=#$V+GAM;,57:V_B2!;][E]Q
MQ;9&M.0)?H+)))$,(=.L0I(%TJO1:CX4N !K;!=3570Z^^OW5-D0HDGHV9G1
MKA0%NZKNZYS[<%T\"?F+VG"NZ6M95.JRM=%Z>][IJ.6&ETR=B2VOL+,2LF0:
MKW+=45O)66:%RJ(3>%ZW4[*\:EU=V+4'>74A=KK(*_X@2>W*DLGG 2_$TV7+
M;^T7IOEZH\U"Y^IBR]9\QO7C]D'BK7/0DN4EKU0N*I)\==E*_?-!9,[; Y]S
M_J2.GLE$LA#B%_,RSBY;GG&(%WRIC0:&GR]\R(O"*((;OS8Z6P>31O#X>:_]
MQL:.6!9,\:$H_IEG>G/92EJ4\17;%7HJGC[Q)I[8Z%N*0MG_]%2?C;LM6NZ4
M%F4C# _*O*I_V=<&AR.!Q'M'(&@$ NMW;<AZ><TTN[J0XHFD.0UMYL&&:J7A
M7%X94F9:8C>'G+X:WWT>S>:3T=U\=M'14&B6.\M&>% +!^\(^P%-1*4WBD95
MQK/7"CKPY.!.L'=G$)S4>,V79Q3Z+@5>X)_0%Q[""ZV^\!U]HU]WN7ZF"=<;
MD=&X^L*51DII1:S*Z.\BKS1]QOM.<D7_2A=*2^3)SR<L1P?+D;4<_3%@3PJ;
M2CQ76[;DERV4FN+R"V]=^=Z9<QS!D05J$Z./SGS#:2C*+:N>:<,0(\4>S8:?
M1M>/MR.ZOZ'1/Q['\Y]H,II_NK\^4N ,6,&J)7<)!/!RP65#@M^G#^3[;ICT
MG"D'3!6)%?$:U7;?];HA[/Z(XB?\->MEC79^\)5\-^HG[QH)/ K=) C>L&#7
M?X^%('"[4?"^"1]QU&?H>B?S:NUH@/7,F21N<O>W B[I(S@EMM$^,N0-L2S+
M34MA!92&GAOU$IK9II;_FV?.5HI5KFV"%4(I>%GW3M.$\$2CNP=ZX')'.1A2
M6"K0&=4YS1XGDW3ZD^'I87I_,YY3>G=-M_>S&9BZN9].TOGX_HZFH]MT/KJF
M^?V>SG0XO'^\,VM'C-J8#;;.'5J[8@42'-X" Z]G2 WZL9MX]6Y>+47)L1C%
M;I#$9M?M][O(J@6PK_&BTWCYB>N8P%Z5V!)L28,9!1&%,8VU\X2(,ZZY1"_#
MCMXP;0&9<E: V"S/J!(:!,,M8Q$--J\LVB8M&"UV"H(65>A?"ID9OM$T]89N
MTMD A&7Y*E_6<,_%-E]2XL4N#?:"8'215W9?.>UT-C3['\E]52@WZ7A*G]/;
MQ]',O*:SV0A5E@X!^!0X6V+&Z6!\.YZ/<03[CY,'0\]1A1(O\M)80IR[+;Q9
MPJ(H\JSV[0-U0]?OQDZJ%#]"Z]P9,K4A/W0CO^\,=GF1&?B[2#0/?-V:O$KB
M^CEGB[P .MQD$N:JD4Z!RL[ OV7/;%%P:ONQV^OWP.2M,#P">\"ZT-2.8JO3
M<,Q77!JJFE30["L5C7:48;?K^G[7=!BAD?5YAO" LE5?@2EF0S@GO]]U8Z];
MEZN=N8A)'>@[(AI=)0S=,/()3<LYLLJ_XGM#<4(Q*1/W2HIRGPDG7$0M64?6
ML*PTK;_I /:-UA=.4+E*XZ?.71QN[!B\\8 ^O#'?(E]XLW%&J=-\RIC31\WB
MN[\E@=_[01WWIY<J_]/MN$F;WYUH[5H [)UHP";*IDU^C[I?XO2X>CEG"OQ5
M/ZQ#@T'T"J_.(BNNGX3M$NI5)["(^#] '])NQI?H*#9IVY3]%X;BQE"3M9B'
M^/^6F6;JOQARVM3FL.1#T&]T_+_H\UT_@@]AZ*0O<P2U6H<0N#%::3>)OCWR
M$J^/ GIK:B8HPYX?G68\=.->  7QMRU%<>1Z0?C6? [BIH.<G+RAVP/N83>A
MFYT$U-+1PD(N9+[.#0!'UEAI^M?K\;MA&6T+?!!E%D%OGW)[M/XGPQ/?07$4
MND&O9UX"UP\3V/>='Z49\\W8!ZQ^SWPO403'X%P<O9ZQ?2]QO2BV<72M]_$?
M^R0QF-2N@9 /U'/[28#Q[>,IZG5AHP=\(&8XAJVX;UP/J+WZZ.PK"9^_,$4@
MP]R=\+OFAAV3#-N=5.#8Z%:XAB!%;+=G^"R5&D.5+7,SOJ78K3>.>L8M@)OE
M12X*L7ZF,YK_!;7R/:;92P-OO#Z5U/LCORVM;TO[KU+KK2M Y^B>57*YMK=)
M17;>UE>NP^KAPIK6][27X_5M=\(D$E]1P5<0]<YZ<8MD?8.L7[38VEO;0FC<
M >WC!I=N+LT![*^$T/L78^!PC;_Z#U!+ P04    "  Y<*U46"W-1W(%  !A
M#@  &0   'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6SM5UUOVS84?=>ON/"&
M(0%46W+L)$V3 /DJ&J!I@R3;'H8]T!(M$Z%(E:3BY-_W7$IVO*T)]K "P[ '
MRR)Y[^6Y7X?BX=*Z>[^0,M!CK8T_&BQ": Y&(U\L9"W\T#;28&5N72T"AJX:
M^<9)44:E6H_&6;8[JH4R@^/#.'?MC@]M&[0R\MJ1;^M:N*=3J>WR:) /5A,W
MJEH$GA@='S:BDK<R_-Q<.XQ&:RNEJJ7QRAIR<GXT.,D/3B<L'P5^47+I-]Z)
M/9E9>\^#R_)HD#$@J641V(+ WX,\DUJS(<#XTML<K+=DQ<WWE?7WT7?X,A->
MGEG]JRK#XFBP/Z!2SD6KPXU=?I"]/U.V5UCMXY.6G>QX;T!%ZX.M>V4@J)7I
M_L5C'X<-A?WL!85QKS".N+N-(LIS$<3QH;-+<BP-:_P278W: *<,)^4V.*PJ
MZ(7CVP^?;^[>W%W<7-''RT\7]/D]G=U<G%_>'8X"S+/0J.A-G7:FQB^8RL=T
M94U8>+HPI2S_:& $7&MPXQ6XT_&K%L]E,:2=/*5Q-LY?L;>S=G8GVMMYT=XL
MT+GRA;:^=9)^.YGYX% 8O[]B?+(V/HG&)_]$)%\UQ8UXX!M1R*,!.LU+]R '
MQWD^3&X7UH4W=]+5]!$Z9.=TYF2I KVX.VV1H.WDTM"M;(*L9](AG/E^2F$A
MZ<S6C3!/Y%5E9 E)(Y>)J)R4:+R 6@P+^B"<4YY.A;FGK9]^V!^/LW?=7!SD
M[[8I6#0H5*--^=@HITQ%10>-O1O2'5:<?+#Z@9=TC[X7@7GP"PET:87-*Q%D
M(FK; @*$VH8W8--:>D2#Y[;4-OU(XW2:96F69;2?T6Y&6[/M9(?'<2X?\G,R
M'$^[)Q[XK9>!*'D148%*!J7YO@?!5R3F<\4\ !8!TA*AJKI!81^D$2;XE)0I
M=%NR/88[MQJDA]$!9.I&*V$*V055BR7$&V<?%/.;3[#U7,%*H80F'Q !SH"/
M.S72*5LJE(YL4 "L*)YB@J 5Q*/$#!-P8!A%=$,98 J68<, '&D=+_U%#NSN
MX 4 BZ+@@/M$!+I2I89>NGKA1.=[[SP+(06<#A"/!D@G=$K=V< DRTDLOK3P
MJ1O.P?8SKTHEG))=?%J'4EF!+-&1LC2PF5*I?&,[Q1@.@5RSKQ60ARY%. Q2
M*A;"5-)#FV:M5YVR71KI_$(U#&$U3=H6$1<$I*E$Q5:@5DM703J&9@-NC.)]
M)_,@?8@)2& /R()3LS8*=5JH!:0S2 )_&"_B$>.']$D8>X9SDRM:4-4*QFYC
MQ>Y.*4_?3OO:LXF7!7-0B'VQD4]NQZ[V/<VL PNA,5M$RO6RWZ[8E"X^7=/E
M,_ N;M#M<P@\<4L5GHA+ ,02$@1#:/U<+8@3PM%$+*PS5X\!*%>ANC=VJ67)
MT6=K#=P+7/\U(MH5[FJ'9PZ9.UMO1 *ELP)4"H;W7LX<5I^2?,I$#YJCCN8
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
MG WB@ =>PD("* J<1_OV P,24<S#++/PQ6["P]"SZ=[E"VHFA40[G-;5-"]
M#4KGD?P+8[]\Z8P[['83,X6S,K5Z98KB,O4[@GU01E2O__XA];WD1\WD?"YM
M!W5H,\GKS@%W1H/^_;!_]^FN]T@$PIM]TN[Q94/LB23,K.D/+.8Q\I%$,9XC
M)-#E61(Y7\9[+N_,LL#M1"[[U_;7&<#SJ3E &E"Z?LK#U .041IP/TR<85V=
MHTNM$ 9AF!M9:M;VB:0I.V/MV.5AXK(SI[\0U1.ARJ0V>6F-B@K% V 4]D50
MGD B=@,>^O[^_DI83[;.@M8)SV*/G3NW&X;L/LUR0 H>3U&L*0#(8G+"\UT>
M)/Z!%\^B6(EFB!$-!(EX"=5$RMI!!@*GD-W0Z T$>/W&J!V?=M5S)/?O5M%!
M=R$"/DOU>G:"S$>4G^+WUH#3N(RI3"/;DM"*6^)IV[EDN:P5S@Y[V&D0R:RE
MK*S 5"CU2F4BRGI5-5)":VF:!!:YF.1%;G*(4=^<YQ7 S.&ODM!L(.DL5VI9
M:V+W0>0;+>T]%6=4*QA8LIR %MNA90T1T9D O;^W\]X,;@>CT>#&=MO>>#QX
M'+,V:ND:!?5X-Q@?-%Q1B9D@.B/>94YP8Z[I)GB$M19JIBW$88C<)%X#=P">
M1 G*SX!7M@(V,7D93T,P).5I'#@/"B<^95XYDW^M\F5)5+'821Q^%G4!U5&*
MS*%F8O1C%QWQ=@=C7F&NKDA&HQ7ZQ&K702VBN&,_)0(@Z9D?.U^/4+K]MO&,
M%IN]8/80I]/9-]E 6.?TASZQAP[MI0@$9?,X,(W4MT"<V[?/*/HF@K8?>J@!
MU]9EG #"",Y\!T#M.$5Q^K:IQ)A\\?>)>3[P2A &9F<6G(05!>][KO,M/5E5
M&SL:GJK\O_A \9R ;L=C5/ ':H+(:(SHJ!='/(U\.W8V0X MA(;NZOP=NE&A
M+7$J>;']LGBU3=U/(AXA@S%W@8@;A0><']*8>!B,,#"&/[%/]^,QZ_=&H__@
M[/%+;W0S=OY@GV"(<INQ%&< %[/?=P,7;'939":T2VKQ?@A#24)+X,=]<#T*
M EJF#-V4>V%&BXSA.4A2/(?0$E,S(ATA<2>!2+)I7V^N][1SK,KY_I#<X,.J
M?Z*>>!9Y80<X=1^,-TK(6\/I3:?4M:@+V>\H"F5PL3*O=O_>6?:$5[O>PX_.
M<)P9=%WD,T$C:B(*6W7V[J#146<;^C3M5^R:96-\M76F\;G6.56OYDZ%CX2!
MF$[5"GK1[$5A.ZP]F!JT:6V(=36H3(;7N5GLSX>=9A+J$._^CNO!,!&X!=G.
MH6DT@G%/, "Y8R?Y[M[%J)3JR5[_" >@W-R1=F]W-\Q><[%ZV]Y<3S\+]80R
M1+G.(>IVDJC%5'/E:Q:F7MIKUJ0VN+39QP5NR5+1!GR?U[79+LC [MY]]3]0
M2P,$%     @ .7"M5$13J4G, P  _@<  !D   !X;"]W;W)K<VAE971S+W-H
M965T,C$N>&ULI57;;N,V$'W75PS419^TUL5VDLW:!GQ;Q$#B&%&R^U#T@9;&
MEK 4J9)4O/G[#BG9<8HF*- '6[S,G#EG.!R.#E+]U 6B@5\5%WKL%\;4UV&H
MLP(KIGNR1D$[.ZDJ9FBJ]J&N%;+<.54\3*+H(JQ8*?S)R*UMU&0D&\-+@1L%
MNJDJIEYFR.5A[,?^<>&AW!?&+H234<WVF*)YJC>*9N$))2\K%+J4 A3NQOXT
MOIX-K+TS^%[B09^-P2K92OG33E;YV(\L(>28&8O Z/.,<^3< A&-OSI,_Q32
M.IZ/C^C?G';2LF4:YY+_*'-3C/TK'W+<L8:;!WFXP4[/T.)EDFOW#X?6MA_Y
MD#7:R*IS)@95*=HO^]7EX<SAZCV'I'-('.\VD&.Y8(9-1DH>0%EK0K,#)]5Y
M$[E2V$-)C:+=DOS,9+6>W]\M8;-\@/1F^K <A890[5Z8=0BS%B%Y!R%.X$X*
M4VA8BASSMP AT3EQ2HZ<9LF'B O,>M"/ TBB)/X KW_2V'=X_7?PEDR)4NPU
M;%!!6C"%\,=TJXVBDOCS _S!"7_@\ ?_(X<?(MB;=ZUKEN'8IZNE43VC/XF'
M/6\E,EGA&?%_QH+' KVYK&HF7L#Y"J-A*TUAB[7,@(D<\I(W!G,H6[2:T+1#
MHVMA"H0=10:Y@Y)<,RFTY&7.K(,V]*D<I-UV[CV8O0/LO0+;7\9XUG"'PS3L
M)*<&H*\AG=\L%T^W2[C_!K-INIK#=+V Q>KVZ7&Y@-O[-'U5Y]D*L&40>6MJ
M4!U_9HPJMXUA6XY@I*5L%,'3&9.)0<J"@4_0#P:#+T%\D= X";Y<7@;1,/)^
MN'MJ.3VCHK9#WE5%>7"\269C2+3(">O::X7&2="/+X)D.+##9! %%X/86W32
M:6D8#8-ADCC#B*;#Y)RM3<IYC/]$_QC[/,F?(.HE5^UG '-4AGJN1QTB^PFR
MMCU.PZ&0FD!15=KY$G9>MELV=(XZH]CNQ& M#0()@]]_NTJ2Z&OJD.Y;)+<6
M?R6 AN=0DZDP)>/\I:/35==RDQ*4YXJH,8W" $@9'$@$".ERP)N\C6>-*!$U
M*7<-F2KJ*,W";#%CC789R25H2>W<AB[HG&@/J8$3@\_.@_IXCPK?2GVSZ!W3
MX-)\JKG>FYJ;KA]7GUVYK;[3PN9Q=;].SPIM>HYX2FP2!U$4P3"Z=%^Z=0J]
M3B;\6P\)SWIRA6KO7AY[O1IAVO9\6CT];M.VI[^:MR_C'5/[DCAPW)%KU+L<
M^J#:UZ:=&%F[#D_7GMX+-RSH@49E#6A_)^G\NHD-<'KR)W\#4$L#!!0    (
M #EPK53K?!/SD@4  /\+   9    >&PO=V]R:W-H965T<R]S:&5E=#(R+GAM
M;)U667/;-A!^UZ_849U.,L-(!$E=/C0C'VDT36)/9#L/G3Y Y(K"F"08 +2L
M_OHN0%*64\L/?9!P[?'M8K\E3C=2/>@UHH&G/"OT67=M3'G<[^MXC3G7/5EB
M02<KJ7)N:*G2OBX5\L0IY5D_\/UA/^>BZ$Y/W=Z-FI[*RF2BP!L%NLISKK;G
MF,G-69=UVXWO(ET;N]&?GI8\Q06:N_)&T:J_LY*(' LM9 $*5V?=&3L^CZR\
M$[@7N-%[<["1+*5\L(MY<M;U+2#,,#;6 J?A$2\PRZPA@O&SL=G=N;2*^_/6
M^B<7.\6RY!HO9/9#)&9]UAUW(<$5KS+S76X^8Q//P-J+9:;=/VQJV2CL0EQI
M(_-&F1#DHJA'_M3D84]A[!]0"!J%P.&N'3F4E]SPZ:F2&U!6FJS9B0O5:1,X
M4=A+61A%IX+TS'1Q>WWQ)US?W,ZOORU.^X9,VH-^W*B?U^K! 746P%=9F+6&
MJR+!Y*6!/F'9 0I:0.?!FQ8O,>Y!R#P(_("]82_<!1@Z>^&A -=<X4=[<0G<
M\"W5DX&94KQ(T<W_FBVU450<?[_A+-HYBYRSZ/]F\TUU2\!C7?(8S[K$,(WJ
M$;M3-NS!PLCXH7-=VD+60.M]/W"[QLZ%S$M>;&'--7#05AZDDX<RXP6\__VW
M<1#X)S>T<%-V\J%G-:&L5"DU@ER!60L-5@)H-!)*)1]%@L"31%A3/ -1Q)0U
M(I(3>, M8%YF<HNHO8Y<K42,2GN0"$6TDXK % G$A)I8P@NC:S<(+5Y[+&A;
M5TLM$L&5(,NB *D25-;%&K,2N'%7Y*05&NHUSL@2->T]<I'Q94:1D&M9%)AU
MJ%D!!27J?)%+RF9)4[$4F3"U5TD6U$90Y!1F+@TZD[J*8]2_PK098Z,3#<M*
MTYUIW8.YL4D2A4%;^"3,39-PVM6ZPJ13%2Z&75)M&HPP%;DJ9/'Q9\4SL1*D
MO']=NKZ5% M4E&^#*G=H^(:K1$-K$U_<+I5XC8#Y/@Q<0:QD1@U7%"D8EYRZ
MZXI_[,6]$MB+BG&MDI)'LC:35GZ+G"ZSCI4HBOF28+0T=?FDB7\,BXO/5Y=W
M7Z[@^M.+*H79Q>W\?GX[OUITOE5.FX+2EIS4.YY0Q?8F?K@F2JD[YQ16C-ZO
MOM@$AN' \RG,(_![HP$P^W=$0SCH_$&T)FU@HZ 1"7I1U R="VLQR^B<8L*G
MDDHT@?<L=*(?6N&P%PW=?#3HM+A(+!KLQ!JW_L#-Q^.#8 ,?1M%D'VS48V'M
M*-@#ZS<B86_(FN$ V##R1I.)0\'(QC/8T-\'.R$QGSV#;<18;_ &6 :C\<0;
M."3.^ [L:-P:MY7TFN9@&+VJ.0Q=+6Z::_W('ZFH4R0ZVO>"+4[BA*,V<0&(
M#:X-T=M!4[-([/DSI2@*2J@K;2X4//*L<M+(XW5;N*G-J96->197&;?YM8Q-
M70T_4Z(%!"T@3HS-:U=OU/"GV?P[W,^^W%W!;+&X^UKWWXY+@;UN2E-);8_L
MNE <N=A)PYVPY]M?9TZWKFSC4@2/\A6$\(ZN*1S!N\Z]),QUBQI2N&,Z&?D]
M%M'1CU\AO\Q"FZ>TJ:JCVK(=Z!M]62D*N],2^1"/O1>MN375E'XS$%_&0QJH
M:,?4:Y@7,#H+O0GQ@06-3#!R8SAV51&,O9 -267H#:@Z1J$W8@R&S!V&H4>T
MAH;4K.;"3-.WY  ^:G4;^Y$KJ6T_"7J78;:UQ19,O D;6V*Z(N%IJC"U*:8>
M3=%K$3]GBSY?-K(V:?L%1TWTO_5-%74$(Q9XDV@ A<AH-W04&PR](/3AM:=#
M?^]1EJ-*W=.3*E-6A:G?9[O=W>MV5C_JGL7KI_%7KE** #)<D:JE=!=4_=RL
M%T:6[HFWE(8>C&ZZIA<Z*BM YRM)W[=F81WLWOS3?P%02P,$%     @ .7"M
M5,.A^MAY @  ,@4  !D   !X;"]W;W)K<VAE971S+W-H965T,C,N>&ULG51+
M;]I $+[G5XQ\IO@!Y"5 XI&J41L%A30]5#TL]H!7L7>=W3&$?]_9-;A4:CCT
MXMUY?-\\O#/#G3:O-D<D>"\+94=!3E3=AJ%-<RR%[>H*%5O6VI2"6#2;T%8&
M1>9!91$F4709ED*J8#STNH49#W5-A52X,&#KLA1F/\5"[T9!'!P53W*3DU.$
MXV$E-KA$^EXM#$MARY+)$I656H'!]2B8Q+?3OO/W#B\2=_;D#JZ2E=:O3KC/
M1D'D$L("4W(,@H\MSK H'!&G\7;@#-J0#GAZ/[)_]K5S+2MA<::+'S*C?!1<
M!Y#A6M0%/>G=%SS4,W!\J2ZL_\*N\8W9.:TMZ?( Y@Q*J9I3O!_Z< *XCCX
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
MMA66K9;">!@-UODS45$JK979UZ_!Q9WM+HJ57.'\%,M/FGWM /9 !^X5)95
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
M<P\/X$1^E!]GH.X,'=+-YZQZ&'"](*9HB_._D\ ].?\[F)H*:-6M-ZZ-@=>
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
M"(GWW07R+F?,LO%0JSUHAR8U-_"I>C:9X](596TU[7+BV?$Z^[S([K)TLMC
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
MU^8!0VD-S/U*"+U7;(#V2<S^ E!+ P04    "  Y<*U4CW9:3 T$  # "
M&0   'AL+W=O<FMS:&5E=',O<VAE970S,BYX;6R=5MMNXS80?==7$&I1M  1
MDQ0E2JEMP(X=9 $G<7-I411]H&7:%E82O105)W_?(6VK3I!DT;Z(MYDS9^:,
M1/5WVGQM-DI9]%R5=3,(-]9NSWN])M^H2C9G>JMJ.%EI4TD+2[/N-5NCY-([
M566/$9+T*EG4X;#O]^9FV->M+8M:S0UJVJJ2YF6L2KT;A#0\;MP5ZXUU&[UA
M?RO7ZE[9Q^W<P*K7H2R+2M5-H6MDU&H0CNCYF#M[;_![H7;-R1RY3!9:?W6+
M+\M!2!PA5:K<.@0)PY.Z4&7I@(#&MP-FV(5TCJ?S(_JESQUR6<A&7>CRCV)I
M-X,P#=%2K61;VCN]NU*'?&*'E^NR\4^TV]MR$:*\;:RN#L[ H"KJ_2B?#W4X
M<4C)!P[LX, \[WT@SW(BK1SVC=XAXZP!S4U\JMX;R!6U$^7>&C@MP,\.YW>W
M\^G=PY\837][_#*_GMX\H-'-!,VFH_OIU>UL<H]^?I"+4C6_]'L6 CJW7GX
M'^_!V0?@E*%K7=M-@Z;U4BU? _2 :4>7'>F.V:>($Y6?H8ABQ BCG^!%7?J1
MQXL^2M] >QO[@M&\E+5%LEZBZ;>VV$+?6?37:-%8 XWS]R>A>!>*^U#\@U#W
M%U?3R>-LBFXOT?>K_EZQ/\5W;^]YLY6Y&H3P>C;*/*EPB/Y;U,"5%8WRO*W:
M4EJU]'4.+G1CT40!;%Y(_S+=*!N,VZ)<%O6Z\54KJJW13\K5K4$_(HY3%F%!
M4I@SG*41CM,,YA2GG&!*LV#40F_K10&MA6B68!;'2% 84D09QUDF(&ZU;:TR
M:"/-<B>-0CS""8D19YC'"8!1G@67K:D+V\*IX[$JGMT<,"."$P=&$DP)18 9
MQR*X7:V*7"'5B0R,!'-0/KX(KF7=KD#SUD!N)W8)3A.!199!;A2()C!C\'3H
M)'@P$C(Q*,,\B9# <>0PLX@&8RTMBCCFA" &::8<I5" ))@I^)IL=/FF=FGJ
M"1V&GWY(&66_!@\JW]2ZU.L72 AHQ%DW'DUF+GT&D0@3Q\WC.H#*,R"58DZ=
M) +*F( \L9<*:&)!(Z<^>:L^^7_JBRS%D2!>_32"&G'FU<\2AAE+7ZN?$IR!
MG FHGX"J-(.RDO?5C[,(<8")!8 E4?*A^M0U1PQ%@C%-0)<LSMX5/^$H$Q2E
M6?2)]#0& 5F,@(" MN8II!4#[42(4^D9 ]M$Q' JN'@M/?<=3HFC]3WM!68@
M#228B+?*LRSNQE?*\YCA*.O:X;AVRD.]4L>(@@2)?P$%<=+$3A9,8/^][UOO
MY%:IE%G[N[-!N6YKN[]@NMWN>A[M;Z5_S?=W^[4TZZ)N4*E6X$K.1!PBL[\O
M]PNKM_Z.6F@+?>&G&_C%4,89P/E*:WM<N #=3\OP'U!+ P04    "  Y<*U4
MT3=-6K\"   _!@  &0   'AL+W=O<FMS:&5E=',O<VAE970S,RYX;6R-5=MN
M&C$0?<]7C%9]:"64O4&X")"X;!JD0E @;=6J#V9W "M>F]HFD'Y];2]LJ00H
M+^S,>.;,S%E\MKT3\D6M$37L<\95QUMKO6GYODK7F!-U*S;(S<E2R)QHX\J5
MKS822>:*<N9'07#GYX1RK]MVL:GLML56,\IQ*D%M\YS(MSXRL>MXH7<,/-'5
M6MN WVUOR IGJ)\W4VD\OT3):(Y<4<%!XK+C]<)6OV;S7<)7BCMU8H/=9"'$
MBW5&6<<+[$#(,-46@9C'*PZ0,0MDQOA]P/3*EK;PU#ZBW[O=S2X+HG @V#>:
MZ77':WB0X9)LF7X2NP<\[.,&3 53[A=V16XM]B#=*BWR0[&9(*>\>)+]@8>3
M@D9PH2 Z%$1N[J*1FW)(-.FVI=B!M-D&S1IN55=MAJ/<OI29EN:4FCK=G?;F
MR60^@X]SLF"H/K5];5#MF9\>$/H%0G0!(8Q@++A>*TAXAMG_ +X9IYPI.L[4
MCZXB#C&]A3BL0!1$X16\N-PQ=GCQ!;S/0F0[RA@0GL&(:\)7U"P+/:50*QA2
ME3*AMA+A9V^AM#3_E%]7VE;+ME77MGJA[6SPD R?OR3P> \'FL^Q>Q7$WLF6
MVI 4.YZY= KE*WI=. -]8\F"@5 :>FFZS;>,:,P<A3!!?3,U+C?;?C"A1B6H
M-XT5-JN5N!%8*Z[<-9L6(SB+$9S!B,+05M8M6M58<5 )XSI<8:Y6,E=[-W/)
M;#X:FQ6'T!L_/LU'/WKST>,$DN_39#)+SA%Z%?L\H8G2-+>[WI!<2$W_$"<9
MN#?:IQ#$*TK0:P2.>PU+(R/PAD0JH J(@J5@1MM4"]X_MV4Z*GD_RYE_<JES
ME"LG70I2L>6ZN-]EM%3'7B$*_](+:1T3N:)< <.E*0UNZX8B6<A5X6BQ<1*Q
M$-H(CC/71N%1V@1SOA1"'QW;H/QF=/\"4$L#!!0    ( #EPK52E]AD,: ,
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
MM!?;7&BZ)NUT3=\E*(T![2^%T+N%"=!\Z0S_!5!+ P04    "  Y<*U4@>&
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
M"C=DJ:T _G^OE#DP]H)FY^[^!U!+ P04    "  Y<*U4RGC?G60#  "0#0
M&0   'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6R]5VUKVSH4_BL'LPL;;+7E
MO+0=22!O8X&F,\UZ]V'<#XI]$HO9DB?)30O[\9/LU$Y+XF07LB^)).MYGG/.
M@PY2;R/D#Q4C:GA,$Z[Z3JQU]M%U51AC2M6%R)";+RLA4ZK-5*Y=E4FD40%*
M$]?WO*Z;4L:=0:]8"^2@)W*=,(Z!!)6G*95/(TS$IN\0YWGACJUC;1?<02^C
M:UR@OL\":69NQ1*Q%+EB@H/$5=\9DH\3W[. 8L>_##=J9PPVE:40/^QD%O4=
MST:$"8;:4E#S]X!C3!++9.+XN25U*DT+W!T_LW\JDC?)+*G"L4B^L4C'?>?*
M@0A7-$_TG=A\QFU"'<L7BD05O[ I]W:Z#H2YTB+=@DT$*>/E/WW<%F('0 X!
M_"W ?PUH'P"TMH#6J8#V%M N*E.F4M1A0C4=]*38@+2[#9L=%,4LT"9]QJWO
M"RW-5V9P>C :+F8+^/()@KOI8GK[=?AU]N46WDY04Y8HN*524NO,._@ ]XL)
MO'WSKN=J(VSA;K@5&94B_@$1XL-<<!TKF/((HY<$KHFX"MM_#GOD-S).,+R
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
MDI_&_<B#T!O:3Z<Q.1<+HX'K^+78&\I^3=GOI!RG*5%GU)2%4C,XL>@&3A!
ML\6@MAAT6EQB)L\&:C,:G!GMN5Y_$#EFJV%M->RT.L6R<R:DS>PD-)@-_*@?
M-+)@D/,\&(:>F5Y4TXO^A\J)SA,$0S<(&YS/Q1H%]H;RH*8\Z*2L3PV8$_1(
M,B)>+J [>(]'2?=<K*O0H7/LGLX?EWJE>FFMPY.6#?]+M5?:%Y<[=(^&W0O2
M0PJ!&>8"X&<Y3'!C6BJ@-[[+<#>KR"#F>V$0M1 ]-E_H=1*]1R]RU!#<2,TS
MA"<*!TZS9DR"7N3[_;8$'ELZ[.[IOU_F%>"[Q](@UW4NX;&EP^Z>OMA2)GHR
M\3G8R:>6C@?/VWL8AM!OLC3< BH#;05ZO 9@]STPI\7F?9+GUP'T!K[O-ED:
MY :^VQK+X[4!N^^-)14H,S(+S^YC<Y;/Y8Q9MD_FPARSC1Z7.4CHOA#E9%7O
MUB-YK ?1QOY$C>IZWCS"E'/^'6(;4G"0X;6$=*Y"28J5HW.Y$'2GI\]'*N0L
MJQ^W\G,#,R4@WZ\I%:\+9:#^@!G_"U!+ P04    "  Y<*U4]V[J39D"  "<
M!P  &0   'AL+W=O<FMS:&5E=',O<VAE970T-RYX;6R-E6U/JS 8AO]*0\X'
M352@P "SD>B8T<27Q;ES<CYVK-L:"^6TG=-_;UN0S /,?5G?GON^^CRC[7#'
M^*O88"S!>TX+,;(V4I:7MBVR#<Z1N& E+M3*BO$<237D:UN4'*.E$>74AHXS
ML'-$"BL9FKDI3X9L*RDI\)0#L<USQ#^N,66[D>5:7Q//9+V1>L).AB5:XQF6
M\W+*U<AN7)8DQX4@K  <KT;6E7N9QCK>!/PF>"?V^D!GLF#L50_NEB/+T1O"
M%&=2.R#5O.$QIE0;J6W\JSVM!JF%^_TO]QN3N\IE@00>,_J'+.5F9$466.(5
MVE+YS':WN,XGT'X9H\+\@ET5&\06R+9"LKP6JQWDI*A:]%[784_@^CT"6 O@
ML0*O%GC'"OQ:X)O*5*F8.J1(HF3(V0YP':W<=,<4TZA5^J30?_M,<K5*E$XF
ML_'M))W?3\#3#9@_IG>S\=/\\662@N?)XPN87OU]4.T,G*18(D+%*3@'\UD*
M3GZ=#FVI^-K%SFK6=<6"/:P49Q? <\\ =*#;(1\?+W<ZY.G1<C?^+K=5T9K*
MP:9RT/AY/7[W6'UNXH"1UQAYQLCO,5+IP*YB5JK J/3I?4O""/HJ\[<.F-_
M_)]@7A>L4@WV8:'K],""!A;\!/.[8$$;YOA]F0T:V. G6- %&[1A;MP'"QM8
M>!#VPB2B7;2P18-Q&,(>7-3@HH.XN[Q4%R1@*[ D(F/;0I)BW86/6OCSR/$#
MKQL?-_CX(-Y\ZH 2M""4R(\SH,X2SA>8'SK-UW'K^X5N" =ALY?JT+?#_,AS
M7>][6-H."Z,8.L%_F=E[5Z%^MQX07Y-" (I72NA<A,J!5V]!-9"L-+?C@DEU
MUYKN1CV?F.L M;YB3'X-](7;/,C))U!+ P04    "  Y<*U4(ONKD\4!  "X
M P  &0   'AL+W=O<FMS:&5E=',O<VAE970T."YX;6Q]DVMKVS 4AO^*$ PV
M&)$OS3:*;6B:C@UV"0WM/BOVL2VJBR<I<_?O=R0[)H.F7RP=Z;R/WJ-C%:.Q
M3ZX'\.192>U*VGL_7#/FZAX4=RLS@,:=UEC%/8:V8VZPP)LH4I)E2?*!*2XT
MK8JXMK-588Y>"@T[2]Q1*6[_;D":L:0I/2W<BZ[W88%5Q< [V(-_&'86([90
M&J% .V$TL="6]":]WN0A/R8\"AC=V9R$2@[&/(7@:U/2)!@"";4/!([#'[@%
M*0,(;?R>F70Y,@C/YR?ZYU@[UG+@#FZ-_"4:WY?T$R4-M/PH_;T9O\!<SSKP
M:B-=_))QRLWQQ/KHO%&S&&,E]#3RY_D>S@3IU05!-@NRZ'LZ*+K<<L^KPIJ1
MV)"-M#")I48UFA,Z-&7O+>X*U/GJV]W-_FY/WF[!<R$=^<&MY>&BWA7,(S]D
ML7IF;296=H&UA7I%\O0]R9(L_5_.T-;B+5N\99&77_(&>-WN%5"^@/((NKH
M^CE *$IW1$8D:82KS5%[@LOP4J&O\]:K=?+F)5_LK!'AG_[.;2>TPV-;!"6K
MCVM*[/2?3($W0^S-P7CL=)SV^+3 A@3<;XWQIR"T>WFLU3]02P,$%     @
M.7"M5)R:+K-> @  O@4  !D   !X;"]W;W)K<VAE971S+W-H965T-#DN>&UL
MC51=;]HP%/TK5K2'5EI)XB1\5"$2#52MU*T(2O<P[<&$"UAU8F8[T/W[V4[(
M:(&N+XD_[CGWG)O<&^^X>)%K (5><U;(OK-6:G/MNC);0TYDBV^@T#=++G*B
M]%:L7+D10!86E#,7>U[;S0DMG"2V9V.1Q+Q4C!8P%DB6>4[$GQM@?-=W?&=_
M,*&KM3(';A)OR JFH&:;L= [MV%9T!P*27F!!"S[SL"_3B,3;P.>*>SDP1H9
M)W/.7\SF?M%W/",(&&3*,!#]VD(*C!DB+>-WS>DT*0WP<+UGO[7>M9<YD9!R
M]H,NU+KO=!VT@"4IF9KPW1W4?JS C#-IGVA7Q4;805DI%<]KL%:0TZ)ZD]>Z
M#@< /SP#P#4 ?Q80U(# &JV465M#HD@2"[Y#PD1K-K.PM;%H[886YBM.E="W
M5.-4,DWO1L/9PP@]WJ)!FC[.OC]-T624CNZ?!S?Z^&((BE F+]$5FDV'Z.++
M9>PJG=C W:Q.<E,EP6>2#"%KH<#_BK"'_1/P]/-P[RW<U78;S[CQC"U?<(9O
M AG0+9DSD.CG8"Z5T#_3KP^(@X8XL,3A&>)!EO&R4%+_WOL,IXI5D426Q'39
M-NF$7A!XW=C='E;E.*[MMWT<]IJX-RK#1F7XL4JF6Y<4F7:OIP!:\'*NEB73
M'56I/R6Y8FP?2+G"G:#7Z;V3?#+.#X/V:<E1(SGZ4/(35^2?P/^4-SHNKX][
M 7ZO]3@NZG9[73]XI]4]Z"XSV;X1L:*%1 R6&NFU.II"5-.BVBB^L0TWYTJW
MKUVN]8 %80+T_9)SM=^8'FY&=O(74$L#!!0    ( #EPK51L?D PFP(  (X&
M   9    >&PO=V]R:W-H965T<R]S:&5E=#4P+GAM;)55:V_:,!3]*U8V39VT
M->\ 78C4 E61MK:"/CY,^V"2"UAUXLPVI/WWLYTTHB6@[DOBQSWGGG,=W\05
MXT]B#2#1<TX+,;364I9GMBW2->18G+(2"K6S9#S'4DWYRA8E!YP94$YMSW$B
M.\>DL)+8K-WR)&8;24D!MQR)39YC_G(!E%5#R[5>%V9DM99ZP4[B$J]@#O*^
MO.5J9K<L&<FA$(05B,-R:)V[9Z-(QYN !P*5V!DC[63!V).>3+.AY6A!0"&5
MF@&KUQ9&0*DF4C+^-IQ6FU(#=\>O[)?&N_*RP )&C#Z23*Z'5M]"&2SQALH9
MJZZ@\1-JOI1189ZHJF.#P$+I1DB6-V"E("=%_<;/31UV .XA@-< O(\"_ ;@
M&Z.U,F-KC"5.8LXJQ'6T8M,#4QN#5FY(H4]Q+KG:)0HGD_GH:C*^_SE!-Y=H
M>OTPN;Z[F4TG<W0R!HD)%5_1=W0_'Z.3SU]C6ZJ$&F:G#?E%3>X=(!]#>HI\
M]QOR',_M@(\^#G?>PFUEL_7JM5X]P^<?X)L66R@DXR]H3$1*F=AP0+_/%T)R
M]37].9+!;S/X)D-P(,.(Y24%"1E:,9:)KHK5!*$AT%=LF_B!V^M[@]C>[I:F
M(\X?^+U!T,:]41BT"H.C"A_5I4*D0"5G*PZB4^)1!MU6SD2)4QA:JF\(X%NP
M$M1UNC5/M&/!#;UP$'8["%L'X5$',URI"R"!$TP%PD6F.E!94@*=7L(]#9'3
M5P6/WI5[/R[H>RJTURTV:L5&_U^L+Y_<R/EQQR2FZBB:;[)>[+(0[7T)@U!=
M""=\9V$_KN_WO&#':FW!WND6NE/_PGQ%"H$H+!72.>TI"EYWOWHB66D:R())
MU8[,<*U^&,!U@-I?,B9?)[HGM;^@Y!]02P,$%     @ .7"M5.Q>(@5(!@
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
M:U@ /FSGRD1^RY*S H1F4A %J[$W"<^G?9OO$GXPJ/3>FE@G2RD?;7"3C[W
M"@(.&5H&:EX[F +GELC(^--P>FU)"]Q?/[-?.>_&RY)JF$K^D^6X&7M#C^2P
MHB7'.UE=0^/'"<PDU^Y)JCJW'WLD*S7*H@$;!043]9L^-7W8 X2] X"H 40?
M!<0-('9&:V7.UHPB31,E*Z)LMF&S"]<;AS9NF+!?<8'*G#*#PW0QO;Z</7R]
M)-^OR'QR?WE[OR!',T#*N#XFG\G#8D:./ATG/IIB%N)G#?%%31P=()Y!=DKB
M\(1$011VP*<?AP<OX;ZQV/J,6I^1XXL/\'V1,J\8YX2*G-P(I&+-EAS(1&M
M369,9USJ4@'Y-5EJ5.;W^OU.V;@M&[NRO0-EYQ1!H#XA4ZFQJXDUO._@=N)V
M:10,@\$H\7?[S>I,B\*P37NAKM>JZ[VK;I)E95%RHS$GDT(J9/^H':XNH373
MV9Z"<-2+A\$KH1UI ^.GURVTWPKM?ZR-M]#9Q?Z;]H3QV>AU$]]FQ4$8#UY)
M\_>&R5YDWZA:,Z$)AY7!!:<#0Z#JRZ$.4&[=?"TEFFEURXVY3T'9!'.^DA*?
M SNR[0V=_@=02P,$%     @ .7"M5&1=Q48" @  W ,  !D   !X;"]W;W)K
M<VAE971S+W-H965T-30N>&UL?5-?;YLP$/\J%MI#)TUU@*5;*X)$ ETC+4T4
MDFW:M <'+L&JL9GMA.[;SS8$1=.R%WQGW^_/X7/4"OFB*@"-7FO&U<2KM&X>
M,%9%!351MZ(!;D[V0M9$FU0>L&HDD-*!:H:#T>@.UX1R+X[<WDK&D3AJ1CFL
M)%+'NB;R]Q28:">>[YTWUO10:;N!XZ@A!\A!;YN5-!D>6$I: U=4<"1A/_$2
M_V$:VGI7\(5"JRYB9#O9"?%BDWDY\4;6$# HM&4@9CG!#!BS1,;&KY[3&R0M
M\#(^LS^ZWDTO.Z)@)MA76NIJXGWT4 E[<F1Z+=HGZ/L96[Y",.6^J.UJQZ&'
MBJ/2HN[!QD%->;>2U_X_7  "_PH@Z &!\]T).9<IT22.I&B1M-6&S0:N58<V
MYBBWEY)K:4ZIP>DXGSUEZ?9SAI:/*,LW\T6RR5*4+);KS?Q[LIDOGU'V;94]
MYQFZ24$3RM3;"&NC;/&XZ%6FG4IP126%XA:%_CL4C )_FZ?HYLU?+-CX'LP'
M@_G T897:#\)4;:4,41XB>9<$WZ@.P8H40JT0BE5!1/J* ']2'9*2S,"/_\C
M&PZRH9-]?T76-!'\ZQ]TJ+%#V<=PBOWP[OX^PJ=+,7QQ67;N%T0>*%>(P=[@
M1K<?#('L9JE+M&C<_>V$-M/@PLH\/Y"VP)SOA=#GQ([$\*#C/U!+ P04
M"  Y<*U4=Z&_32L#  ","0  &0   'AL+W=O<FMS:&5E=',O<VAE970U-2YX
M;6RE5MMNXC 0_14KVH=6VFUN0& %2-S:1J(7E7;W8;4/A@Q@U;%9VY1VOWYM
M)TT#!%BI/"2V,^?,F6'L<7O#Q;-< BCTFE(F.\Y2J=5WUY6S):187O 5,/UE
MSD6*E9Z*A2M7 G!B02EU \]KN"DFS.FV[=J]Z+;Y6E'"X%X@N4Y3+-[Z0/FF
MX_C.^\(#62R567"[[15>P 34T^I>Z)E;L"0D!28)9TC O./T_.\#WP*LQ0\"
M&UD:(Q/*E/-G,XF3CN,914!AI@P%UJ\7& "EADGK^).3.H5/ RR/W]DO;? Z
MF"F6,.#T)TG4LN,T'93 '*^I>N";:\@#JAN^&:?2/M$FM_4<-%M+Q=,<K!6D
MA&5O_)HGH@3P&P< 00X(=@&U X P!X0VT$R9#6N(%>ZV!=\@8:PUFQG8W%BT
MCH8P\S=.E-!?B<:I[F1P/1H^C4?H[A)=W=T-?\;C,>K=#E%\.QQ=QK?QXPB-
MXQ\CL_#8N[V*^]JV-YF,'B?H; @*$RK/T3?T-!FBLR_G;5=I48;:G>4"^IF
MX(  /T WG*FE1".60+)-X.IHBI""]Y#ZP5'&(<PN4.A_18$7^!6"!O\/]X[(
M"8L,AY:O=H#OBO-D0RBM2DV&K%NDV7 OW: >UH*HWG9?RHI/VVU)JQ72:D>E
MQ3KC<\*( C36FRE!,5.8+<B4 NI)":I*<T;9*&F)(D__=B2?--M27"\4UX\J
M[L.",$;80N]=BMD,JA36]UR'GA]&U9X;A>?&4<^]E M%_F)S^%0Y;>PY]1NU
ML+F3E5-66]*B0EIT5)K>."<R$NV[#1NMUHZX?:LC>6L6XIHGQ-WKLGH!J?3A
MKZ0NM%376Z+?>$HH46]HP,6*"YM8=#8>#\[1KQM(IR!^']E]K<)]Z_,%T]H+
MW'3!_9JNL/.;P<&B]KV/0]C[5''E\++G;WY4H? _#+<EEOJ$_\DBRPG*IY3?
M#"N.A@K#W7QG(MU27TM!+&R[EVC&UTQE_:!8+:X4/=M(=];[YJIA^^4'379/
MN<%"%XA$%.::TKN(M"J1M?YLHOC*=L\I5[H7V^%27Y= & /]?<ZY>I\8!\4%
MK/L/4$L#!!0    ( #EPK51.)L >H (  *4'   9    >&PO=V]R:W-H965T
M<R]S:&5E=#4V+GAM;,U5R6[;,!#]%4+H(07::/.2&K( >2EJH F,.&D/00^T
M-+:(B*1+TE;<KR])R:K=VHYSZT4B1_,>W\R(,U')Q;/, 11ZH063?2=7:M5S
M79GF0+&\YBM@^LN""XJ5WHJE*U<"<&9!M' #S^NX%!/FQ)&U344<\;4J"(.I
M0')-*1;; 12\[#N^LS/<DV6NC,&-HQ5>P@S4XVHJ],YM6#)"@4G"&1*PZ#N)
MWQMWC;]U^$:@E'MK9"*9<_YL-I.L[WA&$!20*L. ]6L#0R@*0Z1E_*PYG>9(
M ]Q?[]@_V]AU+',L8<B+[R13>=^Y<5 &"[PNU#TOOT =3]OPI;R0]HG*RK?[
MR4'I6BI.:[!60 FKWOBESL,>(/!/ ((:$%P*"&M >"F@50-:EP+:-<"&[E:Q
MV\2-L,)Q)'B)A/'6;&9ALV_1.E^$F?]DIH3^2C1.Q=/D87SW,$-7(U"8%!+=
M82&P*=[[R%7Z ./FIC79H"(+3I#Y ;KE3.42C5D&V2&!JY4U\H*=O$%PEG$$
MZ34*_0\H\ +_<39"5^^.Z1I>SN*=9AF]0<LP.<4R?H.6HRP'B0J;.H:6-CQ!
M.\NQ@(_FRF1HR*EN(Q+;FYCH<K(EZ*NMT'R+]OVF>&O-28E%AIZ^:DHT44#E
MCS."6HV@EA74.B$HH5PH\LN*./8G5>BV19MFMHG]3BN\B=S-?EU?\SJ0UFZD
MM<]*,UE_N@4Z!W$NTDY#U_D_4M]M!'7/QC=AJ1X9$A!ANH4( 2S=HI2S#0AY
MO!JC[C]Y#CIMWPL.RS%^U:W2Z^[U(PIB:0>!U!+63%5WO[$VLR:Q+?8O^\#O
M#:N1\8>F&F"W6"P)DZB A:;TKKM:E*B&0K51?&6[WIPKW4/M,M=S%(1QT-\7
MG*O=QAS03.;X-U!+ P04    "  Y<*U4,LG0(H$"  #P!@  &0   'AL+W=O
M<FMS:&5E=',O<VAE970U-RYX;6R]E5UOVC 4AO^*%>VBD[;F PA0A4BT!#42
MM(C -JW:A8$38C6Q,]N4]M_/=FB&ME#478P+XJ_W?<ZQD^-@S_BCR  D>BYR
M*@96)F5Y9=MBG4&!Q24K@:J9E/$"2]7E6UN4'/#&B(K<]AS'MPM,J!4&9FS&
MPX#M9$XHS#@2NZ+ _.4:<K8?6*[U.C GVTSJ 3L,2KR%!.2RG''5LVN7#2F
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
M865N/4B;8-9+(?0IL =K^(\D?P%02P,$%     @ .7"M5*Z>5BA3!   D!$
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
M:$QE@GB_(H0?-K) -?,;OP%02P,$%     @ .7"M5$_Y/^9? P  _P@  !D
M  !X;"]W;W)K<VAE971S+W-H965T-C(N>&ULE99M;^(X$,>_RBBZ%[O27O,
M!*@ *3QT-R?:Y:#T7JSVA4D&L-:Q6=N4]MN?[="4.P)2>4%LQS/_W]AC3WH'
M(7^I+:*&EX)QU?>V6N]N?5]E6RR(NA$[Y.;-6LB":-.5&U_M))+<&17,CX(@
M]@M"N3?HN;&9'/3$7C/*<29![8N"R-<A,G'H>Z'W-C"GFZVV _Z@MR,;7*!>
M[F;2]/S*2TX+Y(H*#A+7?2\);X=A9 W<C">*!W72!AO*2HA?MI/F?2^P1,@P
MT]8%,8]G'"%CUI/A^'UTZE6:UO"T_>;]S@5O@ED1A2/!_J&YWO:]C@<YKLF>
MZ;DX?,-C0"WK+Q-,N7\X'.<&'F1[I45Q-#8$!>7ED[P<%^+$( HO&$1' [<0
M?BGD*,=$DT%/B@-(.]MXLPT7JK,V<)3;75EH:=Y28Z<'B]&WR7@YG<#W.[A+
MTCD\)=/E9&&[R6(Q>5Q ,OI[F<XG8T@>QC!-DV$Z31]3,\6\7][/'M/O#_!I
MC)I0IC[W?&V@K&L_.P(,2X#H D 8P;W@>JM@PG/,_^O -]%4(45O(0VCJQ['
MF-U (_P"41"%R\48/OWQ^8K;1K52#>>V<<'MY/>>ZE>X1[T5.:3\&94VZ:D5
M$)[#7X)R#4^FOY>HX$>R4EJ:E/MY1;E9*3>=<O."\KL6(*,F"8C&'/8[D]29
MX$HPFA.;XG6+7WIN.<_VA#X/XD88MWK^<PU0JP)J705*E$(;=V:61&)^"R.B
MMG7JI9OX1#UL-,-NO7I<J<<?4A_N*<LIW]0!Q&< <2,POWJ"=D70_EC\4Y,"
M=?+M,_E.ZZ)ZIU+O7%6?4K*BC&IJ\HPH<YU:@B3+Q-XFXXZ\DA7#.IK.&<V?
M8:O=;=?C="N<[L=QIH)O0*,LS VYTG4PW7.89NORUH3!^X46?)QGC&N49JN
M\DP4")J\ #M.?*V]M()SOC@.P_@"WLE]&U[%>Q2:,*"Y.<UT3>U6 3?%E[B4
MNJU%"<]/43=N!9=0HG>4Z"K*5U.TP55&D\>*NBHIUC!YF,$<";NP,-'9C1(V
M&N94_X_&/ZE)!<J-J[P*7):6Y:D:K:I[4M:T]^GEI\$]D1O*%3!<&]/@IFW$
M95EMRXX6.U?A5D*;>NF:6_.%@M).,._70NBWCA6HOGD&_P)02P,$%     @
M.7"M5*V\B+/(!   ZA(  !D   !X;"]W;W)K<VAE971S+W-H965T-C,N>&UL
MK5C9;MLX%/T5PI@!6J"-1-KR$C@&X@U-D:2!G78>!O- 2]<V44G4D)2= //Q
M0\JRY$6F-4L>8HGB.7?AY>'2WW+Q4ZX!%'J+PEC>-=9*);>.(_TU1%3>\ 1B
M_67)1425?A4K1R8":)"!HM AKMMV(LKBQJ"?M;V(09^G*F0QO @DTRBBXGT(
M(=_>-7!CWS!CJ[4R#<Z@G] 5S$%]3UZ$?G,*EH!%$$O&8R1@>=>XQ[=3TC6
MK,</!EMY\(Q,* O.?YJ7A^"NX1J/( 1?&0JJ?S8P@C T3-J//W/21F'3  ^?
M]^S3+'@=S()*&/'P-Q:H]5VCVT !+&D:JAG??H$\(,_P^3R4V7^TW?7U.@WD
MIU+Q* =K#R(6[W[I6YZ( X#FJ0:0'$!. :T+@&8.:-8%M') ZQ30O@#P<H!7
MUT([![2SW.^2E65Z3!4=] 7?(F%Z:S;SD U7AM8)9K&IK+D2^BO3.#5X>/XQ
MF;\^39Y?Y^C#&!1EH43/5 AJ1OPC^HR^S\?HPR\?^X[2Y@S(\7/JX8Z:7*#&
MZ(G':BW1) X@J,!/KN")A<#1<1;!DGVP0V)E'(-_@YKX$R(N<2L<&MGA7VF\
MA^->!7Q<VSKN5J6COO.X C[]U[$?Y;)9%$XSXVM=X)O$"9H!#=4[>GP<H=^?
M(%J ^,/"W"J86U;F9QY_]O7 "Q[J3RO$8@4"I))5)6BG:GHWKOMK5;+^.>XH
M%J^(Q;N:I1<0*7J(-SH$+<E*HL?0KY.O=F&C;;7Q;1N#D&N6%)FJ*BX[A^=>
M";A3.-.Q$KT([@,$$BT%C[1#^ZBK7-HQ>1F360$W@Z;;ZNBIL:EPH%LXT/V?
MZ[)7,/?^>Y['=@[2NI)G[);"[5JI[I,D9!"@+SP,S#09<9'4"1<?+ W8:N'!
M-GKC''PX?'H[H_^JQP^3TBRQFAW#0B$M !N=;;/Y"%)  550Z82=ZEPJCWTJ
MQ0[;U<Z:;/07>J)O+$JC6ODO=1#;52A+Q$,LE4C-('Q"KR"BRBS8>0AZ!RJD
MS:=2S[!=T%X%X^A;DG"ATICI25:[[$HYPW8MNE)V[;.R\VQE5PH7MBN7/3(]
MQB,>1;H<1R&5$@UKQ5R*%K:KEEGS-ER9TI)KJK6E,O0=1_LT] N1E[J&[:(T
M-Q91(IA?/<=Z9QG'%VR24KV(7;VF(1<LH&BH3P5!7:4FI701NW35TNK1%9*K
MBR(I-8W8A<A:TZ,<?)QA%U\<6E+J%K'KUDQ;U>.J=(Y]*M>?]&$PA"SE:9(=
M#:F_-D47L5#WY'%5 0QS&R?N'55>O@.]WO$XCE(*B5W"1GH_R%8Z?69AD"P
M<S[1 ? EHD' S#,-44+?+Z1XFO,?SAWBX6Z[V[K@6JF(Q*Z(,]A G%8E;I(C
M#XUV>EU"NO@T<14=6YVVW@U=\*X44V(7TWO?YZG9=,[ ![:AB[!ZB-MG#F"O
MUR0=<NSIA)S++]&K;+/EG89TWO&4\3BD4JB)7:@?WU=<ZG6QUB::E!),[!)L
MG:+#''QUV7$.CN(1B%5V:2)1-@B[PU716ES,W&?7$2?M0WP[QA7M$WP[W5V[
ME/2[6Z G*E8LEBB$I3;EWG2TLV)WL;)[43S)+@(67"D>98]KH'HNF0[Z^Y)S
MM7\Q!HKKK<'?4$L#!!0    ( #EPK52/$:U&+@4  -H8   9    >&PO=V]R
M:W-H965T<R]S:&5E=#8T+GAM;+5976_B.!3]*Q;:E6:D+<1.PD=%D4JAI5)I
M*^CL/HSFP20F6$UBQG&@E?;'KQW2&&APV+;TH>3#Y][CZWN/+Z:[9OPY61 B
MP$L4QLE%;2'$\KS12+P%B7!29TL2RS=SQB,LY"T/&LF2$^QGH"AL(,MJ-B),
MXUJOFSU[Y+TN2T5(8_+(09)&$>:O?1*R]44-UMX>3&BP$.I!H]==XH!,B?BQ
M?.3RKE%8\6E$XH2R&' ROZA=PO.1[2I -N)O2M;)UC504YDQ]JQN;OV+FJ48
MD9!X0IG \F-%KD@8*DN2Q^_<:*WPJ8#;UV_6K[/)R\G,<$*N6/@/]<7BHM:N
M 9_,<1J*"5N/2#ZAC*#'PB3[#];Y6*L&O#01+,K!DD%$X\TG?LD#L060=LH!
M* >@?8!S &#G /M8@),#G&,!;@YPCP4T<T#S6$ K![2.!;1S0#M;W<UR9&LY
MP +WNIRM 5>CI35UD25$AI9+2&.5NU/!Y5LJ<:(W'3U,GLZ>AI,QN+N]'X*'
M:W U&0YNG\"W 1&8A@FXQYQCE6'?P1GX,1V ;W]\[S:$=*Y,-+S<47_C"!UP
M!,&8Q6*1@&'L$W\7WY"D"^;HC7D?&0T^>*(.;/@70!:")7RNS/#+-)!PZR!\
M8(9/R?(-#MLE\*$9/L:\((]*X-=F^(!XQKG?'#/WP_#1\=XMPTK:10[:F3W[
M@+T[>0_8'%QQXE,!KK%'0RI>P<_LQ:T@4?++X,8IW#B9&^<H-V5!W^#=#*]$
M?]5#MF6U8:?;6&V'IV0<A$VK91?C=@BZ!4'72' D"XTFH(_C9_!S3*(9X;_
MO[+^8G8EMRPP96&J!#\!M[&W/>*)\ C<,1P7#PWA:A9LFJ=<E5;AIF6<](#,
M!*!Q(G@JMT1U*0@GB0!2<TB9S)C-.777^M- JUW0:AOMW,M=]S+@A&2DCE\-
M@^M.X;ISRL!#2TN_92X(E3%!BCF6,2?^H8A?5YAING7+&'.XM1G!3Y9H;F"[
M]F#'M>1?>>U!I'VCCZWXF/HACGTP%3(^>^5IFK66/WA2_8-: *%9 2\#.;]
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
M0CO@^H)S]6;H#9H/F<%?4$L#!!0    ( #EPK51T8,"V100  +$4   9
M>&PO=V]R:W-H965T<R]S:&5E=#8W+GAM;+U86V_B.!C]*U:T#S/2MHGM7"M
M:DEG6ZD7-+0[&HWVP1 #49.8M4V9_OMU0AK3$MQ4K'@!)_DN_LY)CC^[MV;\
M22PHE>!WGA6B;RVD7)[9MI@N:$[$*5O20CV9,9X3J2[YW!9+3DE2.>69C1S'
MMW.2%M:@5]T;\4&/K626%G3$@5CE.>$O%S1CZ[X%K=<;W]/Y0I8W[$%O2>9T
M3.7C<L35E=U$2=*<%B)E!>!TUK?.X5F,4>E06?R=TK78&H.RE EC3^7%==*W
MG')&-*-3688@ZN^9#FF6E9'4//ZM@UI-SM)Q>_P:_5M5O"IF0@0=LNQ'FLA%
MWPHMD- 9667R.UM?T;H@KXPW99FH?L%Z8^L%%IBNA&1Y[:QFD*?%YI_\KH'8
M<H#N'@=4.Z"N#KAVP%T=W-K!K9#9E%+A$!-)!CW.UH"7UBI:.:C K+Q5^6E1
M\CZ67#U-E9\<C(=7E_'CS26X_P;N'Q_&#^=W\?7=7^#B_.;\;G@);N[/[\"7
MF$J29N(K. &/XQA\^>-KSY8J>QG#GM:9+C:9T)Y,,9V> @S_!,A!L,5]V-W=
M:7&/.[O#Z*V[K2!K<$,-;JB*A_?&FZD[";B@A1I),,I( >)43#,F5IR"7S?J
M,;B6-!?_&-+A)AVNTKE[TMVP8GXB*<]!3">R#?R-OU?YEQ_[\P!AW_>BL&<_
M;Z.\:X=#-_#Q.[MXU\[%H8,CW-B]*<1M"G'-A5 ASM2+S3DM)%@R7G[];?5L
MPOA;^4^""'N!^ZZ>%KO0#8/(;9^GU\S3^Q!P4 $^(8K:*6V;H[>3&WH!=M#[
M.>[:H2@*0W?/'/UFCKYQCE>$\U2 "U(\@5^W-)]0;GK7@B9L<(Q7.VS2A0>^
MVD;_<F$\$TLRI7U+K7R"\F=J#4";P!P>YTV!45-@U)FF>X5<!ZJ@H^7;.099
M<&N]@ ?290[P";[^AT!OB]3B#I&QR-LT43@F8"R)I-V_,*CE'.*CT*9E%WZ@
MNQ_39@SP&=IV)1DBSW/WK!Q02S(T:[)J]!)PRR3C8,AIHF ;LGQ)BI=.W&A5
MA?Y1N-%Z"X-#N3$&^ PWAP=Z6Z16>6B6^1%Y47N6Z1,8<2;KIE\-YYSDG>C3
M:@NC8]"'M 0CYT#ZS $^05\=:/O3PDAM\9SV3PMI54=F53>QTW'-0ENM\U%Z
M9Z35%AW:/9L#?(8AO-OK02_R]S&D!1R9!;QM2>K*C%98Y!V%&:VUR-S"=F#&
M;VFR/==QWS?9;881<J+ WP.]UF=DUN<VZ!_6K!/T6A]1>!3HM4XB<UO: ?IH
M5VU"Z.]LP5KL0H34;K$=>*R5%9N5=2R9DJ2?A">OJ/.5D%UPQUKY,#S*1EZK
M'S;WEAVV\JAE[^V$6WC66_D6.]<)@N@=[O;6\5!YF'=+^#PM!,CH3#DZIX&*
MP#?G8YL+R9;5B=&$2<GR:KB@)*&\-%#/9TPM$O5%>0C5G%(._@-02P,$%
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
M#1JU5(QBO]Z@3;, ^]AO)\7.ZTGM_(_"=G?J:3DS'US*+8NA;^D!0()X FN
MV@[-@]";O(/()U%'1D??'OSQC#K[^B#VYL7W*<5!K?PM=JX^ZKR.,PR35UQR
M$O>^DXPT3DU"/=^-HCI:TQ#[3J!/AAJ;??1%ST"LBT%'HICO<E5^#JO=:IBZ
M*D:(VO[0#%G%I/ J4TYH-TRLDURB%%9:TKDP(XTHAYYRH?BVF!L>N=)32'&Y
MT8,B"&.@[Z\X5R\+$Z :/0=_ %!+ P04    "  Y<*U4EHTC+N8#   >#
M&0   'AL+W=O<FMS:&5E=',O<VAE970W,2YX;6R5EVUOXC@0Q[^*%=U)7>G:
MQ'8>*T!J@=4B;1]4VMN33O?"A &B36S.-@_]]FLG-*4A1-TW)79F_O.;L6-/
M>SLA?ZH5@$;[(N>J[ZRT7E^[KDI74#!U)=; S9N%D 739BB7KEI+8//2J<A=
MXGFA6[",.X->.?<H!SVQT7G&X5$BM2D*)E]O(1>[OH.=MXFG;+G2=L(=]-9L
M"5/0+^M':49NK3+/"N J$QQ)6/2=&WP]Q+YU*"W^SF"GCIZ1364FQ$\[F,S[
MCF>)((=46PEF?K8PA#RW2H;C_X.H4\>TCL?/;^I?R^1-,C.F8"CR']E<K_I.
M[* Y+-@FUT]B]PT."056+Q6Y*O^B764;4@>E&Z5%<7 V!$7&JU^V/Q3BR &'
M9QS(P8$T'?PS#O3@0,M$*[(RK1'3;-"38H>DM39J]J&L3>EMLLFX7<:IEN9M
M9OST8#K\-AZ]?!^CAZ_H:3Q\N!].OD]NGB</]W9F<C]\N!NCYYM_QE-T,0+-
MLEQ]09?H93I"%W]\Z;G:,%@E-SW$NZWBD3/Q,$%W@NN50F,^A_E' =? UQF0
MMPQN2:?B"-(K1/%?B'@$MP -/^_N=>#0NJ"TU*-G]"8\%06@9[9'HTREN5 ;
M">C?FYG2TNS9_SI"^'4(OPSA=X>8@?F* 6FV;UN&2B(H)>RWO!V$8>!%0=AS
MM\?5.;4+<.(E45#;?6 ,:L:@D_%EBI1F>J.%?+6(2#(-J@VT6X=Z5X'W9]NR
M_K[?AT3".I&P4VB\7YL3!^8HJZI^IMSA21G-?HK]&#?*?6J'@Y@2/VHO=U13
M1IV4]X)?FL]I8P[%60XHTU"T%KM2"8_"7Y(D\.(&98M9Z/F1UPX9UY!Q)^1P
MQ?C2P'$$2F>%W1"(\3D2>@6RC39NP0@\$C5H3\U"C_J$M-,F-6WR65K.RAWP
MMHW;4),3!DJC)&PN?V=(>V5?JS5+H>^8.UF!W((S0!V;&'OOQ[S7F8VY\\R-
MQNL<T#Q;+$ "3UO3.:A]*'T<ADGS]&BSP\2CT9GBXZ-["7^R_%N6;UAUY^>F
MZV#GD/$)"HXPB9M[N\7NDB8QC<,SR.0=F70B/PO-\J-S H$Y.[AJIR4G%(0&
MH9\D3=Q30QQZD>_C,[CO%Q6FW17>2+/^^K/ ])0C22B.21.XQ1 G47RT$!^!
MWZ\]W'WOC<#L6'GX$ ^HZ$)"*K8@7]N;D=/KC8:4XN81TF+G>TD0T :S>]1I
M%2"790.J4"HV7%<M2SU;-[DW96O7F+^US6_9P;W+5)WS'9/+C"N4P\)(>E>1
M@9)5,UH-M%B7_=Q,:-,=EH\KT\"#M ;F_4((_3:P >I_"0:_ %!+ P04
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
M<ORJOK[A\T_PC7"#=(T"YISE$+]*Y)1DT#.=12Z T 0&C"ZN!FH[)Q *@5+
M\T#Q0%]B+GZ=41%4*@*C(CC599*A.-:= E8S,/V+WW3]('#KOE]KVYO]JAU)
M= .G$=2"*O&=LEJEK'966;&9SEBL5T3U3RQTHU+1^%BA"UA]KWXUK]9RG(,R
M'TFK>^ISO,C-2E7SK*H)3:6R/)9$8E&(<,H92>#Y'O,I\G/.6]4:K4^LO^N\
MG6?.QSI0XMYM8;_9<H)_]OJQ3*<9!$VO>= '>^_@5287YCX2,&-K*HLCJXI6
M=UYH3OJ#^*V^"\V!_D937*3WA"]2*B##N:)TKAM*%B_NIF(BV<H<[U,F5:7-
M<*GN<^0Z0;V?,R9W$[U ]0^A^Q=02P,$%     @ .7"M5.JJ_D>= @  GP<
M !D   !X;"]W;W)K<VAE971S+W-H965T.#8N>&ULQ55-3^,P$/TKHV@/("WD
MHTE*4!HI)&6IU"VHH>QAM0?33MN().[:;@O_?FTG1(5M*R0.7&)[/._YS8L_
MPBUE3WR)*."Y+"K>,Y9"K"Y-DT^76!)^3E=8R9DY9241<L@6)E\Q)#,-*@O3
ML2S?+$E>&5&H8W<L"NE:%'F%=PSXNBP)>[G"@FY[AFV\!L;Y8BE4P(S"%5E@
MAF*RNF-R9+8LL[S$BN>T H;SGA';ETF@\G7"0XY;OM,'5<DCI4]J,)CU#$L)
MP@*G0C$0V6PPP:)01%+&WX;3:)=4P-W^*_NUKEW6\D@X)K3XE<_$LF=<&###
M.5D78DRW-]C4XRF^*2VX_L*VR;4,F*ZYH&4#E@K*O*I;\MSXL .PW0, IP$X
M'P5T&D!'%UHKTV6E1) H9'0+3&5+-M71WFBTK":OU%_,!).SN<2)*$MN^NED
MV(?;:QC>CGZ<#0</_13B+.O?9Q"/^S*:Q/<R-!A!$H_B-(9XE,)D-%#![%[.
M97"2HB!YP4_A#"99"B??3D-32'EJ$7/:2+FJI3@'I*0X/8>._1T<R['WP)./
MPZVW<%.:TCKCM,XXFJ]S@&^,&ZS6R&'.: G]9X&L(@4D^I\@XT"J&0QIM3@;
MRHTX@YAS%!Q^#R4/# 26_,\1%9U614>K< ^HT L4>@&B%]CG:TWA:0IU;#>1
M;3F!'WAN:&YV'=R7&/B>Y_MMXAN5;JO2/:JRWAA'RO5:(N\+3?=;%?[G3:\I
M_%TO [OK.>\L_S_-=:7?G?V&=UN%W:,*WQR_(Q5?M'P77^A[T*H(/N][L&</
MVY8G3_T[Y_<E>G806.^]-W>N3_5T_21LD5<<"IQ+J'7>E1RL?@[J@: K?:,^
M4B'MT=VE?$&1J00Y/Z=4O [4)=V^R=$_4$L#!!0    ( #EPK52$\OTONP(
M .\&   9    >&PO=V]R:W-H965T<R]S:&5E=#@W+GAM;+55VV[:0!#]E9'5
M2HF4X@NW) (D,$Z*5!L$I%45Y6&Q!^S&]M+=!=*_[^[:N"0%FI>^X+W,.7/.
M#!YW=I0]\QA1P$N6YKQKQ$*L;TV3AS%FA-?H&G-YLZ0L(T)NV<KD:X8DTJ L
M-1W+:ID927*CU]%G$];KT(U(DQPG#/@FRPC[-<"4[KJ&;>P/ILDJ%NK ['76
M9(4S% _K"9,[LV*)D@QSGM <&"Z[1M^^==LJ7@=\37#'#]:@G"PH?5:;4=0U
M+"4(4PR%8B#RL447TU0121D_2TZC2JF A^L]^YWV+KTL"$>7IM^22,1=X]J
M")=DDXHIW7W&TD]3\84TY?H7=F6L94"XX8)F)5@JR)*\>)*7L@X' +MU N"4
M .<MH'$"4"\!=6VT4*9M#8D@O0ZC.V J6K*IA:Z-1DLW2:ZZ.!-,WB82)WHS
M[][W@KDWO(+9Z#X8W8W<?C ']V$V'_O>%$;!W7CJ]^>C<0#]8 B>.P[&_LB%
MH3?Q@J$7N-_A8HB")"F'@#!&5%LNX1/,8X8(KK: C,.CC]D"V9.\>I@-X>+#
M9<<4TH'288:EVD&AUCFAUG; I[F(.7AYA-%K E-:K_P[>_\#YRSC$,,:U.TK
M<"S'/B+(?3_<.B.G7K6CKOGJ)_BFN,5\@U?@DQ^45=6#QR\R$$8",_YT)DVC
M2M/0:1HGTO3#D&YR@1&PA#_#&EF(N9!O[;&6G*=JW-0LZ^.QROT#U_X;]\I+
ML_+2?(\7#E,,,=F218K5?^T,?:NB;_W/CK2K-.WWN6"5BV.]*$B:FD0-Z&W/
M;MW8[9O&=<?<'A;_2&"C;==MIUT%%CK-@]DA?:WT2.6@U12O475:3>V^'E9O
MS@=RFA?#]P]-\2GP"5LE.8<4EY+2JK6E+%:,UV(CZ%I/J 45LKAZ&<LO$C(5
M(.^7E(K]1B6HOG&]WU!+ P04    "  Y<*U41/\$B[@"  !_"   &0   'AL
M+W=O<FMS:&5E=',O<VAE970X."YX;6RU5MMNFT 0_9413ZW4FILO28218INJ
MD>HTC>OT(<K#&L8&!5BRN]B)U(_O[H()36R4AX2'92]SSLR<%3-X.\KN>8PH
MX#%+<SXV8B&*,]/D88P9X3U:8"Y/UI1E1,@EVYB\8$@B#<I2T[&LH9F1)#=\
M3^]=,=^CI4B3'*\8\#++"'N:8$IW8\,V]AO7R286:L/TO8)L<(%B65PQN3(;
MEBC),.<)S8'A>FR<VV<SVU( ;7&3X(ZWYJ!265%ZKQ87T=BP5$288B@4!9&O
M+4XQ3163C..A)C4:GPK8GN_9O^GD93(KPG%*TS])).*Q<6) A&M2IN*:[KYC
MG=! \84TY7J$76UK&1"67-"L!LL(LB2OWN2Q%J(%D#R' 4X-<%X"AD< ;@UP
M7P+Z1P#]&M#7RE2I:!UF1!#?8W0'3%E+-C718FJT3#_)U;TO!).GB<0)?[&<
M+()?R^#R-P0W<ES IQD*DJ0<+@EC1-W*9_@*/"8,N6<*Z5,AS;#FGU3\SA%^
M%^8T%S&'((\P.H"?=N-MIX/ E,DV&3O[C"=.)^.<L!XXIU_ L1SG4$#=\!F&
M/7!M#;</P&=OAUL=V;C-_;F:SSUV?^6*XT.)N8!@J\;;']("+@1F_*Z#O]_P
M]S5__QB_H.$]T$)]I!PVC.3B\#56-$--HXK-UK='EGP\<]M6YY"9TS;[+\I!
M$^6@,\H@*U+ZA BW<\Q6R.[@+[Q6IC[K4&78^!M^B.JCAG_T+JI/1J_D'!P5
M\Z1Q?O)^8LJS92'K=_"(+$PX EU#%?W/.OHWR'[:1';Z(;+;UG,UM-Y'^)JG
MK;QC#5Y);[8J<X9LHSL<AY"6N:A*5K/;=-%SW3M>[$]5=]45_YFF:LVRGFT2
M&6R*:TEI]4;R4V%5MZL6@A:Z_J^HD-U$3V/YAX!,&<CS-:5BOU .FG\._Q]0
M2P,$%     @ .7"M5$KR,#X? P  #A(   T   !X;"]S='EL97,N>&ULW5AM
M:]LP$/XK1AVCA5''<>O&:QS8 H7!-@K-AWTK2BPG EGR9*5+^NNGLQSGI;K2
M]<.6SB&U=(_NN4=WY\ID6)NU8'<+QDRP*H6L,[(PIOH8AO5LP4I:GZN*28L4
M2I?4V*F>AW6E&<UK<"I%V._UDK"D7)+14"[+F]+4P4PMI<G(16<*W.U+GI$H
MN2"!HQNKG&7D_O3]SZ4RU^\"=S_Y<'+2NS^[/K2?-L 9";VDER\@/>_U<&(
M,?+D9>3/<6/45_O4[7++M/%L',,VLZ-AH>0VP3%Q!LM,2Q8\4)&1,15\JCEX
M%;3D8NW,?3#,E% Z,+:R-E0$EOK1P9&;0=%;GI)+I9O8+H+[.VV7'P";&0CD
M0G0"^\091L.*&L.TO+&39G%C? (%[7BRKJS"N:;KJ'])M@[-S0:9*ITSW86)
MR,8T&@I6@!S-YPNX&U6% !JC2CO(.9TK21L-&X]V8&EG3(@[>")^%'O<JV*G
M9CVHF.R&5E [=#1N OR[;(Y[E_9UO$'%'Y3YO+3;D<T<NHS=:E;P53-?%9T
MC#W"V6E5B?4GP>>R9&[S+PXX&M*-7[!0FC_::- J,VM@F@0/3!L^V[7\TK2:
ML)79M-.JP#7WWZ#FOYOG.9-,4[$KVO;^,6?YU8K;(^1?:&[^K1PJ]HJ,KXY?
M8WML'KO(Y"V(? /ECM.CU!BV1^/.^;MW^G;6 -YR,O(=WI?$-F@P77)AN&QG
M"Y[G3#XYA"V]H5/[LKO';]?GK*!+828=F)'M^!O+^;),NU6WD(AVU7;\%;87
M)=TKEHW%9<Y6+!^W4SV?-L/ #FS4]@*'0^2FN?P(YN,P/P(8%@=3@/DX+RS.
M_[2? ;H?AV':!EYD@/H,4!_GY4/&S0>+X_=)[>7?:9K&<9)@&1V/O0K&6-Z2
M!+Y^-DP;>&!Q(-*?Y1JO-MXAS_<!5M/G.@3;*=Z)V$[Q7 /BSQMXI*F_VE@<
M\,"J@/4.Q/?'@9[R^\0Q5!73ACW!.)*F& *]Z._1)$&RD\#'7Q_L*8GC-/4C
M@/D5Q#&&P-.((Y@"T( A<=R<@P?G4;@YI\+M+T"CWU!+ P04    "  Y<*U4
MEXJ[',     3 @  "P   %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S
M9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X
M 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA<UYVE/=LO
M3T%O@*\Z3'%":4A+,P[PS=)_,O?S##5%Y4HCE5L:>-/E_G;@2=&A(E@6FD7)
MTZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0
M   ( #EPK52>)W'&Q@8  '(Y   /    >&PO=V]R:V)O;VLN>&ULQ9O?DYI(
M$(#_E2F?<E79<^67)I5-%<+H3@6!8\"[O9<4JYBE@K %;'*7O_YF4"N-:[KN
M9?!I%5W\[('^NF?&#]^K^NMC57TE_^R+LKD;/;7M\_OQN-D\9?NT^;UZSDKQ
MRJZJ]VDKGM9?QLUSG:7;YBG+VGTQUFYOK?$^S<O1QP^G<X7U&#ZIVFS3YE4I
M#LH#ZSS[WOQ\73XEW_(F?\R+O/WW;M0]+K(1V>=EOL]_9-N[T>V(-$_5]_NJ
MSG]499L6?%-717$WFAQ>6&=UFV]>'>82,DX?F^Y(FSY&J0"Y&UFWXH2[O&[:
M[AW=^5/!^"T3;SX\>VFK15ZT6>VF;;:LJY?GO/PB3R.^Q1A\C2X.I[^'(+ZO
M_T\8J]TNWV1NM7G99V5[B&.=%1*P;)[RYV9$RG2?W8V<ZEM6R^\C/H!M#]^M
M%5 @4O7[7+Q0LVV'IQ*E;*HBWXI/WY)Y6J3E)B-="!L J"& VM4 R9LP!9 Z
M JD/",DEA/R'AE0[PLI-!2 -!-*X&J23-D\ TD0@S:M!\K;: $@+@;340LYM
MSC@)%B2,**=^;,<L\ ':%$&;JD7C;.FS!7-L/R:VXP2)'S-_2<+ 8PZC'$#.
M$,B96DB/VKS'\@YA>:>6Y1@D3B+J4+:VYQZ%F?D62\VW:M&8OQ875Q#UQVV"
MVD*Q+L(H"&D4/[PE](^$A2LJ+S/?)=V(W@<0$W/&1+$T0CL69+VH87:8*-;#
M,@C</YGG=:%B(E_X2R:N,V)S3ON4F!XFBOW@!2)1Q#1:$9>& 6=],LP)$\52
MD#<"CU?G0XH98*)8 ?P^B.*;+EH>\ZF4@1-1E\40$// 1+$(X&C.>U18XI\H
MSOQ.((8RBKNKWP]B2D+[X3SE8C*8*+8!\YU@14EL_]7+N1JF 4VY!CHFD7<)
MO[<C&"L-<X&FV 4\#IQ/) AE\=,+%MHMJ&X7[)#%MD<Z. B%Y7]-<?[W _]&
M7/EQ%'B>K,:$ JBH''O93,-2OZ8X]7.ZE-F5NF\)+""=1(1Q12.(B7E 4^P!
MGLRYJ#MDT4'79S;0,!MHJFV 5=V?-8B).4&[9G/P68>8F"2T0=H#\B9.Q><V
MOT$LS W:\)W")48=<X4^7,MPD0WSA7[-WJ%WD^B80?1A>H>+X4.GF*[:1!"(
MB:E$'[R+N!A)3"/Z<.W$13;,)+IBD_3+]HMXF$%TQ0:!]?%%.,P;NF)OG!?*
M%P$Q@^B*#=*KF"_1&9@[#,7N^&65>B"%F)A&#-5M!U:K]C1B8!HQ%&ODXAPQ
M>>-F;9H7#4S7!F850[%5N'-/W<3K)C!6-+X/7/E(I&Y1Y# ;SAL8Z-*%Z@8%
MK5P-B(F9Q5#>H*Q6=O0@0QBQY7U\$RQN$GYT-+$A)B890W6[ @8]\5W&NX!2
M5U2V(KXAQ,1D8ZB>PCKV :=[QD_K.I5+NKV4B1G'4&P<&$A\(<' O&.H]@[
M['4(A\C"E3],0*9B 4',"\T"Q,0$9%ZUCX%=M(D)R%0LH%XT3SW-\5:"-Y")
MZ<<<4#^BU& K6Z8A>Q5$,?N[IQ\3TX^I6C\ \ZP/<^F"04QT[5RQ?LZ'^7+&
M-#'UF .JY^> +Y(X$?6ZO8*8F'I,Q>I!F^U>D6EB_C$'],^%QAMB8OXQ!_2/
MS)GQPZG6[%IQN*D#\X^EVC\_JS>1XQ?LF-8#S@7G BYN6YA_+-4-$(CFPF81
M6=M>0KM>0UZ>$!/SCZ78/[U9%C0A69B!+-4&^M5"[@$:8F(&L@8TT*DQ%Y>F
M[8MR,[0?("9F($MU ]1+2(+."42Y:9^N 8B)[M\:T$)!$G.1WUW93\YMS_:=
MWBV$6<@:= W_U5T$,3$+65=:U#\"0TS,0M: %A+Y?<VXG)%9!!'I)@[A_CW,
M0M,!NR#12@:^PSQVF#V2]S[$Q"PT'=!"H@:FD4B:<E[X]::F*6:AZ8!=D"]#
M*%HWNYL[ZKP.,3$+315;J#^O_LJ6$!.ST'1 "\D)3J>KD%SF);**]R F9J'I
M@!82[F$W'2%;T\/<.\3$+#15;*'7ZQ6]@8>8Z(YBU;L&0#3A"@:Q'1'37D+"
M+#0=L!?J81YJ9(B)66@Z[!K0^:T.,&>8A6:*+=3;1X5C8A::#6DAQN.(S1,0
M68B)66BFV$+(TMHY)F:AV8"S<:*M$(U15\8=5]QZ/Q[ +#0;T$*1W B64+*D
MOA2[L!!,2#/,0K-!>R%_>>,) [FG_1IP,6B&66BFNA="UU/A=/8,L]!,M87.
M]_[UDQ+$1'_9TEEHW+VY^?AAF^WR,MOZXB,:<7R3%INP)O*//--$,TRY'7GW
M4A2..!:47I5N3S\9//W<\>-_4$L#!!0    ( #EPK53#)=E(E (  -\S   :
M    >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'/-VDUNHT 0AN&K6!P@N*NZ
MJMNC.*O99!OE LAI_RBV0< HR>W'<A;VAV8QFXAOA1I$\:X>(>C'EW)LQD-[
M'O:';EA\GH[G85WMQ['[5=?#9E].S?#0=N5\N;)M^U,S7I;]KNZ:S7NS*[4L
MEU[W]S.JI\?[F8O7KZ[\S\1VNSULRN]V\^=4SN,_!M<?;?\^[$L9J\5KT^_*
MN*[JS^/M]%!?#^'A,KE:/+^MJ_[Y+53UW$$"03)_D$*0SA\4(2C.'V009/,'
M.03Y_$$)@M+\01F"\OQ!*PA:S1\4EBCCDB!I@C6!U@&Y#@1>!P0[$(@=D.Q
M8'9 M .!V@'9#@1N!X0[$,@=D.Y 8'= O .!WH)Z"X'>@GH+@=XR>=DFT%M0
M;R'06U!O(=!;4&\AT%M0;R'06U!O(=!;4&\AT%M0;R'06U%O)=!;46\ET%M1
M;R706R<?2PCT5M1;"?16U%L)]%;46PGT5M1;"?16U%L)]%;46PGTCJAW)- [
MHMZ10.^(>D<"O2/J'0GTCI./W01Z1]0[$N@=4>](H'=$O2.!WA'UC@1Z1]0[
M$NAMJ+<1Z&VHMQ'H;:BW$>AMJ+<1Z&VHMQ'H;9.?E01Z&^IM!'H;ZFT$>AOJ
M;01Z&^IM!'H[ZNT$>COJ[01Z.^KM!'H[ZNT$>COJ[01Z.^KM!'K[9+,)@=Z.
M>CN!WHYZ.X'>CGH[@=X)]4X$>B?4.Q'HG5#O1*!W0KT3@=X)]4X$>B?4.Q'H
MG5#O1*!WFFP6)- [H=Z)0.^$>B<"O3/JG0GTSJAW)M [H]Z90.^,>F<"O3/J
MG0GTSJAW)M [H]Z90.^,>F<"O?-DL_=/ZCV,7\<RW'J^U_C\GZ1ZO-Q;;H^_
M+K]/HH2K*\[U?<7P]!=02P,$%     @ .7"M5(V<RZLT @  5C(  !,   !;
M0V]N=&5N=%]4>7!E<UTN>&ULS=M-;MLP$(;AJQC:!I8L4J34(LZF[;;-HA=@
M)3H6K#^03.K<OI2<!&B1&@E<H._&@DUROA$'>':^_OXX6;\Z]MW@M\D^A.EC
MEOEZ;WOCTW&R0US9C:XW(7YU=]EDZH.YLYG8;'16CT.P0UB'N49R<_W9[LQ]
M%U9?CO%GWX[#-G&V\\GJTVGCG+5-S#1U;6U"7,\>AN:/E/530AI/+GO\OIW\
M5=R09*\FS"M_#W@Z]^W!.M<V=G5K7/AJ^K@K.W:9#X^=]>GY$J_T..YV;6V;
ML;[OXY'43\Z:QN^M#7V7GHI>G4\.\8;MZ3._.'\I<RXP[KQUX^3CQ)Q]?]SS
M2.;3ZRD6LBZTYU_Q)3&6OOC][#SMQC9OS([7^W-TAV4>/EL>E]_Q[S-^J?_.
M/@2D#PGIHX#TH2!]:$@?):2/"M+'!T@?^8;2"$74G$)J3C$UIZ":4U3-*:SF
M%%=S"JPY159!D5509!44605%5D&155!D%119!45609%54&25%%DE159)D552
M9)44625%5DF155)DE119)476@B)K09&UH,A:4&0M*+(6%%D+BJP%1=:"(FM!
MD5519%44615%5D6155%D5119%45619%54615%%DU159-D5539-44635%5DV1
M55-DU119-45639&UI,A:4F0M*;*6%%E+BJPE1=:2(FM)D;6DR%I29*THLE84
M62N*K!5%UHHB:T61M:+(6E%DK?ZGK#_&\?"/XY=GVIMV>,[/EK^3W/P"4$L!
M A0#%     @ .7"M5 =!36*!    L0   !               ( !     &1O
M8U!R;W!S+V%P<"YX;6Q02P$"% ,4    "  Y<*U4Q^IX3^X    K @  $0
M            @ &O    9&]C4')O<',O8V]R92YX;6Q02P$"% ,4    "  Y
M<*U4F5R<(Q &  "<)P  $P              @ ', 0  >&PO=&AE;64O=&AE
M;64Q+GAM;%!+ 0(4 Q0    ( #EPK50LNK_1/@8  (H:   8
M  " @0T(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q02P$"% ,4    "  Y
M<*U4Z>)Y4B '   7'0  &               @(&!#@  >&PO=V]R:W-H965T
M<R]S:&5E=#(N>&UL4$L! A0#%     @ .7"M5'?W<'Z7 @  [0<  !@
M         ("!UQ4  'AL+W=O<FMS:&5E=',O<VAE970S+GAM;%!+ 0(4 Q0
M   ( #EPK53&#8>,0 @  *LB   8              " @:08  !X;"]W;W)K
M<VAE971S+W-H965T-"YX;6Q02P$"% ,4    "  Y<*U41%4?++\(   &)0
M&               @($:(0  >&PO=V]R:W-H965T<R]S:&5E=#4N>&UL4$L!
M A0#%     @ .7"M5)0SMH38!0  CB   !@              ("!#RH  'AL
M+W=O<FMS:&5E=',O<VAE970V+GAM;%!+ 0(4 Q0    ( #EPK53%1/R7H 8
M  P.   8              " @1TP  !X;"]W;W)K<VAE971S+W-H965T-RYX
M;6Q02P$"% ,4    "  Y<*U4?Q=.FL@;  !M40  &               @('S
M-@  >&PO=V]R:W-H965T<R]S:&5E=#@N>&UL4$L! A0#%     @ .7"M5$S;
MVF>>!0  Z P  !@              ("!\5(  'AL+W=O<FMS:&5E=',O<VAE
M970Y+GAM;%!+ 0(4 Q0    ( #EPK53B*#J&:P(  #T%   9
M  " @<58  !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL4$L! A0#%     @
M.7"M5$BC>ZAZ @  (P4  !D              ("!9UL  'AL+W=O<FMS:&5E
M=',O<VAE970Q,2YX;6Q02P$"% ,4    "  Y<*U4P_!EJGH$  "D"0  &0
M            @($87@  >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;%!+ 0(4
M Q0    ( #EPK53V&XH8]@(  "$&   9              " @<EB  !X;"]W
M;W)K<VAE971S+W-H965T,3,N>&UL4$L! A0#%     @ .7"M5%A]UAZ. P
ML@@  !D              ("!]F4  'AL+W=O<FMS:&5E=',O<VAE970Q-"YX
M;6Q02P$"% ,4    "  Y<*U4D4P%3VX"  !C!0  &0              @(&[
M:0  >&PO=V]R:W-H965T<R]S:&5E=#$U+GAM;%!+ 0(4 Q0    ( #EPK52K
MB)!@=08  -(/   9              " @6!L  !X;"]W;W)K<VAE971S+W-H
M965T,38N>&UL4$L! A0#%     @ .7"M5%@MS4=R!0  80X  !D
M     ("!#',  'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q02P$"% ,4
M"  Y<*U4R%&M0%4%  #R"P  &0              @(&U>   >&PO=V]R:W-H
M965T<R]S:&5E=#$X+GAM;%!+ 0(4 Q0    ( #EPK53^;_[5F (  *(%   9
M              " @4%^  !X;"]W;W)K<VAE971S+W-H965T,3DN>&UL4$L!
M A0#%     @ .7"M5/&JYWCS!@  @P\  !D              ("!$($  'AL
M+W=O<FMS:&5E=',O<VAE970R,"YX;6Q02P$"% ,4    "  Y<*U41%.I2<P#
M  #^!P  &0              @($ZB   >&PO=V]R:W-H965T<R]S:&5E=#(Q
M+GAM;%!+ 0(4 Q0    ( #EPK53K?!/SD@4  /\+   9              "
M@3V,  !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL4$L! A0#%     @ .7"M
M5,.A^MAY @  ,@4  !D              ("!!I(  'AL+W=O<FMS:&5E=',O
M<VAE970R,RYX;6Q02P$"% ,4    "  Y<*U4U6D_UVD$  "2"0  &0
M        @(&VE   >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM;%!+ 0(4 Q0
M   ( #EPK52 (@?:9@<  $0/   9              " @5:9  !X;"]W;W)K
M<VAE971S+W-H965T,C4N>&UL4$L! A0#%     @ .7"M5!:,M]%# @  Z@0
M !D              ("!\Z   'AL+W=O<FMS:&5E=',O<VAE970R-BYX;6Q0
M2P$"% ,4    "  Y<*U42JP2B^T<  "=6P  &0              @(%MHP
M>&PO=V]R:W-H965T<R]S:&5E=#(W+GAM;%!+ 0(4 Q0    ( #EPK50V(1D4
M-0,  #<'   9              " @9'   !X;"]W;W)K<VAE971S+W-H965T
M,C@N>&UL4$L! A0#%     @ .7"M5,P.$7ZF P  S@@  !D
M ("!_<,  'AL+W=O<FMS:&5E=',O<VAE970R.2YX;6Q02P$"% ,4    "  Y
M<*U4BU-R)6\"   H!0  &0              @(':QP  >&PO=V]R:W-H965T
M<R]S:&5E=#,P+GAM;%!+ 0(4 Q0    ( #EPK50!LC=#?P(  !X%   9
M          " @8#*  !X;"]W;W)K<VAE971S+W-H965T,S$N>&UL4$L! A0#
M%     @ .7"M5(]V6DP-!   P @  !D              ("!-LT  'AL+W=O
M<FMS:&5E=',O<VAE970S,BYX;6Q02P$"% ,4    "  Y<*U4T3=-6K\"   _
M!@  &0              @(%ZT0  >&PO=V]R:W-H965T<R]S:&5E=#,S+GAM
M;%!+ 0(4 Q0    ( #EPK52E]AD,: ,  'H(   9              " @7#4
M  !X;"]W;W)K<VAE971S+W-H965T,S0N>&UL4$L! A0#%     @ .7"M5,G_
M._-S @  3P4  !D              ("!#]@  'AL+W=O<FMS:&5E=',O<VAE
M970S-2YX;6Q02P$"% ,4    "  Y<*U4*%OZ3T@%   %$0  &0
M    @(&YV@  >&PO=V]R:W-H965T<R]S:&5E=#,V+GAM;%!+ 0(4 Q0    (
M #EPK516_YM;T00  '0-   9              " @3C@  !X;"]W;W)K<VAE
M971S+W-H965T,S<N>&UL4$L! A0#%     @ .7"M5!V^F7@,!@  PPX  !D
M             ("!0.4  'AL+W=O<FMS:&5E=',O<VAE970S."YX;6Q02P$"
M% ,4    "  Y<*U4>:;-[D4#  !N!P  &0              @(&#ZP  >&PO
M=V]R:W-H965T<R]S:&5E=#,Y+GAM;%!+ 0(4 Q0    ( #EPK52S$5*"U ,
M /4(   9              " @?_N  !X;"]W;W)K<VAE971S+W-H965T-# N
M>&UL4$L! A0#%     @ .7"M5('A@!J3 @  E 4  !D              ("!
M"O,  'AL+W=O<FMS:&5E=',O<VAE970T,2YX;6Q02P$"% ,4    "  Y<*U4
MUW7=WPP%  !_"P  &0              @('4]0  >&PO=V]R:W-H965T<R]S
M:&5E=#0R+GAM;%!+ 0(4 Q0    ( #EPK53*>-^=9 ,  ) -   9
M      " @1?[  !X;"]W;W)K<VAE971S+W-H965T-#,N>&UL4$L! A0#%
M  @ .7"M5'<BHX\T!   >A<  !D              ("!LOX  'AL+W=O<FMS
M:&5E=',O<VAE970T-"YX;6Q02P$"% ,4    "  Y<*U4A;ZC,?L$  !9$
M&0              @($= P$ >&PO=V]R:W-H965T<R]S:&5E=#0U+GAM;%!+
M 0(4 Q0    ( #EPK5382,9'H0,  ,P,   9              " @4\( 0!X
M;"]W;W)K<VAE971S+W-H965T-#8N>&UL4$L! A0#%     @ .7"M5/=NZDV9
M @  G <  !D              ("!)PP! 'AL+W=O<FMS:&5E=',O<VAE970T
M-RYX;6Q02P$"% ,4    "  Y<*U4(ONKD\4!  "X P  &0
M@('W#@$ >&PO=V]R:W-H965T<R]S:&5E=#0X+GAM;%!+ 0(4 Q0    ( #EP
MK52<FBZS7@(  +X%   9              " @?,0 0!X;"]W;W)K<VAE971S
M+W-H965T-#DN>&UL4$L! A0#%     @ .7"M5&Q^0#"; @  C@8  !D
M         ("!B!,! 'AL+W=O<FMS:&5E=',O<VAE970U,"YX;6Q02P$"% ,4
M    "  Y<*U4[%XB!4@&  !+)0  &0              @(%:%@$ >&PO=V]R
M:W-H965T<R]S:&5E=#4Q+GAM;%!+ 0(4 Q0    ( #EPK53SD*,ZV0,  /\,
M   9              " @=D< 0!X;"]W;W)K<VAE971S+W-H965T-3(N>&UL
M4$L! A0#%     @ .7"M5.7Z1LU: @  K04  !D              ("!Z2 !
M 'AL+W=O<FMS:&5E=',O<VAE970U,RYX;6Q02P$"% ,4    "  Y<*U49%W%
M1@("  #< P  &0              @(%Z(P$ >&PO=V]R:W-H965T<R]S:&5E
M=#4T+GAM;%!+ 0(4 Q0    ( #EPK51WH;]-*P,  (P)   9
M  " @;,E 0!X;"]W;W)K<VAE971S+W-H965T-34N>&UL4$L! A0#%     @
M.7"M5$XFP!Z@ @  I0<  !D              ("!%2D! 'AL+W=O<FMS:&5E
M=',O<VAE970U-BYX;6Q02P$"% ,4    "  Y<*U4,LG0(H$"  #P!@  &0
M            @('L*P$ >&PO=V]R:W-H965T<R]S:&5E=#4W+GAM;%!+ 0(4
M Q0    ( #EPK52,^,Z)?@(  &L&   9              " @:0N 0!X;"]W
M;W)K<VAE971S+W-H965T-3@N>&UL4$L! A0#%     @ .7"M5/HE;[#U 0
M4P0  !D              ("!63$! 'AL+W=O<FMS:&5E=',O<VAE970U.2YX
M;6Q02P$"% ,4    "  Y<*U4KIY6*%,$  "0$0  &0              @(&%
M,P$ >&PO=V]R:W-H965T<R]S:&5E=#8P+GAM;%!+ 0(4 Q0    ( #EPK52P
M_4IP^ (  /\'   9              " @0\X 0!X;"]W;W)K<VAE971S+W-H
M965T-C$N>&UL4$L! A0#%     @ .7"M5$_Y/^9? P  _P@  !D
M     ("!/CL! 'AL+W=O<FMS:&5E=',O<VAE970V,BYX;6Q02P$"% ,4
M"  Y<*U4K;R(L\@$  #J$@  &0              @('4/@$ >&PO=V]R:W-H
M965T<R]S:&5E=#8S+GAM;%!+ 0(4 Q0    ( #EPK52/$:U&+@4  -H8   9
M              " @=-# 0!X;"]W;W)K<VAE971S+W-H965T-C0N>&UL4$L!
M A0#%     @ .7"M5"DZHMNL @  >0@  !D              ("!.$D! 'AL
M+W=O<FMS:&5E=',O<VAE970V-2YX;6Q02P$"% ,4    "  Y<*U4:'905R$#
M  #4"   &0              @($;3 $ >&PO=V]R:W-H965T<R]S:&5E=#8V
M+GAM;%!+ 0(4 Q0    ( #EPK51T8,"V100  +$4   9              "
M@7-/ 0!X;"]W;W)K<VAE971S+W-H965T-C<N>&UL4$L! A0#%     @ .7"M
M5-3)?>37!P   #(  !D              ("![U,! 'AL+W=O<FMS:&5E=',O
M<VAE970V."YX;6Q02P$"% ,4    "  Y<*U4_3R$5/\"  "V"   &0
M        @(']6P$ >&PO=V]R:W-H965T<R]S:&5E=#8Y+GAM;%!+ 0(4 Q0
M   ( #EPK50MS_\"8P,  (8*   9              " @3-? 0!X;"]W;W)K
M<VAE971S+W-H965T-S N>&UL4$L! A0#%     @ .7"M5):-(R[F P  '@P
M !D              ("!S6(! 'AL+W=O<FMS:&5E=',O<VAE970W,2YX;6Q0
M2P$"% ,4    "  Y<*U4YB5;/#$$  "+$   &0              @('J9@$
M>&PO=V]R:W-H965T<R]S:&5E=#<R+GAM;%!+ 0(4 Q0    ( #EPK53%*A30
M6P,  %H.   9              " @5)K 0!X;"]W;W)K<VAE971S+W-H965T
M-S,N>&UL4$L! A0#%     @ .7"M5&7,P-\H @  TP0  !D
M ("!Y&X! 'AL+W=O<FMS:&5E=',O<VAE970W-"YX;6Q02P$"% ,4    "  Y
M<*U4%@-0%\0"   (!P  &0              @(%#<0$ >&PO=V]R:W-H965T
M<R]S:&5E=#<U+GAM;%!+ 0(4 Q0    ( #EPK52\38\_0 (   L%   9
M          " @3YT 0!X;"]W;W)K<VAE971S+W-H965T-S8N>&UL4$L! A0#
M%     @ .7"M5+J/3N\Z @  -@4  !D              ("!M78! 'AL+W=O
M<FMS:&5E=',O<VAE970W-RYX;6Q02P$"% ,4    "  Y<*U40+N:IKL$  "G
M%@  &0              @($F>0$ >&PO=V]R:W-H965T<R]S:&5E=#<X+GAM
M;%!+ 0(4 Q0    ( #EPK53 +^EWR (  (4'   9              " @1A^
M 0!X;"]W;W)K<VAE971S+W-H965T-SDN>&UL4$L! A0#%     @ .7"M5-4D
M<UW/!   N1,  !D              ("!%X$! 'AL+W=O<FMS:&5E=',O<VAE
M970X,"YX;6Q02P$"% ,4    "  Y<*U4^;@:RJ0"  #=!P  &0
M    @($=A@$ >&PO=V]R:W-H965T<R]S:&5E=#@Q+GAM;%!+ 0(4 Q0    (
M #EPK52<AZ:E?P,  ,(+   9              " @?B( 0!X;"]W;W)K<VAE
M971S+W-H965T.#(N>&UL4$L! A0#%     @ .7"M5&G.BWNH P  )@P  !D
M             ("!KHP! 'AL+W=O<FMS:&5E=',O<VAE970X,RYX;6Q02P$"
M% ,4    "  Y<*U4S;_+F4D%  #E%P  &0              @(&-D $ >&PO
M=V]R:W-H965T<R]S:&5E=#@T+GAM;%!+ 0(4 Q0    ( #EPK50R4$1@VP(
M "T(   9              " @0V6 0!X;"]W;W)K<VAE971S+W-H965T.#4N
M>&UL4$L! A0#%     @ .7"M5.JJ_D>= @  GP<  !D              ("!
M'YD! 'AL+W=O<FMS:&5E=',O<VAE970X-BYX;6Q02P$"% ,4    "  Y<*U4
MA/+]+[L"  #O!@  &0              @('SFP$ >&PO=V]R:W-H965T<R]S
M:&5E=#@W+GAM;%!+ 0(4 Q0    ( #EPK51$_P2+N (  '\(   9
M      " @>6> 0!X;"]W;W)K<VAE971S+W-H965T.#@N>&UL4$L! A0#%
M  @ .7"M5$KR,#X? P  #A(   T              ( !U*$! 'AL+W-T>6QE
M<RYX;6Q02P$"% ,4    "  Y<*U4EXJ[',     3 @  "P
M@ $>I0$ 7W)E;',O+G)E;'-02P$"% ,4    "  Y<*U4GB=QQL8&  !R.0
M#P              @ $'I@$ >&PO=V]R:V)O;VLN>&UL4$L! A0#%     @
M.7"M5,,EV4B4 @  WS,  !H              ( !^JP! 'AL+U]R96QS+W=O
M<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ .7"M5(V<RZLT @  5C(  !,
M             ( !QJ\! %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&     &
,8 !7&@  *[(!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>101
<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>102
<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>103
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>280</ContextCount>
  <ElementCount>394</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>92</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>00000002 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/BalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>00000003 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/BalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>00000004 - Statement - Consolidated Statements of Income and Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome</Role>
      <ShortName>Consolidated Statements of Income and Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>00000005 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/StatementsOfCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>00000006 - Statement - Consolidated Statements of Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/StatementsOfStockholdersEquity</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>00000007 - Disclosure - BASIS OF PRESENTATION</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/BasisOfPresentation</Role>
      <ShortName>BASIS OF PRESENTATION</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>00000008 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SignificantAccountingPolicies</Role>
      <ShortName>SIGNIFICANT ACCOUNTING POLICIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>00000009 - Disclosure - LEASES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Leases</Role>
      <ShortName>LEASES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>00000010 - Disclosure - ACCOUNTS RECEIVABLE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/AccountsReceivable</Role>
      <ShortName>ACCOUNTS RECEIVABLE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>00000011 - Disclosure - INVENTORIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Inventories</Role>
      <ShortName>INVENTORIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>00000012 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds</Role>
      <ShortName>PROPERTY, EQUIPMENT AND LEASEHOLDS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>00000013 - Disclosure - PATENTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Patents</Role>
      <ShortName>PATENTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>00000014 - Disclosure - GOODWILL AND INTANGIBLE ASSETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets</Role>
      <ShortName>GOODWILL AND INTANGIBLE ASSETS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>00000015 - Disclosure - LONG TERM DEPOSITS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/LongTermDeposits</Role>
      <ShortName>LONG TERM DEPOSITS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>00000016 - Disclosure - INVESTMENTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Investments</Role>
      <ShortName>INVESTMENTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>00000017 - Disclosure - SHORT-TERM LINE OF CREDIT</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Short-termLineOfCredit</Role>
      <ShortName>SHORT-TERM LINE OF CREDIT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>00000018 - Disclosure - LONG TERM DEBT</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/LongTermDebt</Role>
      <ShortName>LONG TERM DEBT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>00000019 - Disclosure - CONVERTIBLE NOTE PAYABLE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ConvertibleNotePayable</Role>
      <ShortName>CONVERTIBLE NOTE PAYABLE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>00000020 - Disclosure - INCOME TAXES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/IncomeTaxes</Role>
      <ShortName>INCOME TAXES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>00000021 - Disclosure - INCOME PER SHARE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/IncomePerShare</Role>
      <ShortName>INCOME PER SHARE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>00000022 - Disclosure - STOCK OPTIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/StockOptions</Role>
      <ShortName>STOCK OPTIONS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>00000023 - Disclosure - CAPITAL STOCK</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/CapitalStock</Role>
      <ShortName>CAPITAL STOCK</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>00000024 - Disclosure - NON-CONTROLLING INTERESTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Non-controllingInterests</Role>
      <ShortName>NON-CONTROLLING INTERESTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>00000025 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency</Role>
      <ShortName>SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>00000026 - Disclosure - SUBSEQUENT EVENTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SubsequentEvents</Role>
      <ShortName>SUBSEQUENT EVENTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies</Role>
      <ShortName>SIGNIFICANT ACCOUNTING POLICIES (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>00000028 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables</Role>
      <ShortName>SIGNIFICANT ACCOUNTING POLICIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/SignificantAccountingPolicies</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>00000029 - Disclosure - LEASES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/LeasesTables</Role>
      <ShortName>LEASES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/Leases</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>00000030 - Disclosure - ACCOUNTS RECEIVABLE (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/AccountsReceivableTables</Role>
      <ShortName>ACCOUNTS RECEIVABLE (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/AccountsReceivable</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>00000031 - Disclosure - INVENTORIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/InventoriesTables</Role>
      <ShortName>INVENTORIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/Inventories</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>00000032 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables</Role>
      <ShortName>PROPERTY, EQUIPMENT AND LEASEHOLDS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>00000033 - Disclosure - PATENTS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/PatentsTables</Role>
      <ShortName>PATENTS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/Patents</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>00000034 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables</Role>
      <ShortName>GOODWILL AND INTANGIBLE ASSETS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>00000035 - Disclosure - LONG TERM DEPOSITS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/LongTermDepositsTables</Role>
      <ShortName>LONG TERM DEPOSITS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/LongTermDeposits</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>00000036 - Disclosure - INVESTMENTS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/InvestmentsTables</Role>
      <ShortName>INVESTMENTS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/Investments</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>00000037 - Disclosure - LONG TERM DEBT (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/LongTermDebtTables</Role>
      <ShortName>LONG TERM DEBT (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/LongTermDeposits</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>00000038 - Disclosure - INCOME TAXES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/IncomeTaxesTables</Role>
      <ShortName>INCOME TAXES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/IncomeTaxes</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>00000039 - Disclosure - INCOME PER SHARE (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/IncomePerShareTables</Role>
      <ShortName>INCOME PER SHARE (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/IncomePerShare</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>00000040 - Disclosure - STOCK OPTIONS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/StockOptionsTables</Role>
      <ShortName>STOCK OPTIONS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/StockOptions</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>00000041 - Disclosure - NON-CONTROLLING INTERESTS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Non-controllingInterestsTables</Role>
      <ShortName>NON-CONTROLLING INTERESTS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/Non-controllingInterests</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>00000042 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables</Role>
      <ShortName>SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>00000043 - Disclosure - BASIS OF PRESENTATION (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative</Role>
      <ShortName>BASIS OF PRESENTATION (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/BasisOfPresentation</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>00000044 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails</Role>
      <ShortName>SCHEDULE OF METHOD OF DEPRECIATION (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>00000045 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative</Role>
      <ShortName>SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>00000046 - Disclosure - SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails</Role>
      <ShortName>SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>00000047 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails</Role>
      <ShortName>SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>00000048 - Disclosure - LEASES (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/LeasesDetailsNarrative</Role>
      <ShortName>LEASES (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/LeasesTables</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>00000049 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails</Role>
      <ShortName>SCHEDULE OF ACCOUNTS RECEIVABLE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>00000050 - Disclosure - SCHEDULE OF INVENTORIES (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails</Role>
      <ShortName>SCHEDULE OF INVENTORIES (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>00000051 - Disclosure -  SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails</Role>
      <ShortName>SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>00000052 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative</Role>
      <ShortName>PROPERTY, EQUIPMENT AND LEASEHOLDS (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>00000053 - Disclosure - SCHEDULE OF PATENTS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfPatentsDetails</Role>
      <ShortName>SCHEDULE OF PATENTS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>00000054 - Disclosure - SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails</Role>
      <ShortName>SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>00000055 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails</Role>
      <ShortName>SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>00000056 - Disclosure - PATENTS (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/PatentsDetailsNarrative</Role>
      <ShortName>PATENTS (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/PatentsTables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>00000057 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails</Role>
      <ShortName>SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>00000058 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative</Role>
      <ShortName>GOODWILL AND INTANGIBLE ASSETS (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables</ParentRole>
      <Position>58</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>00000059 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails</Role>
      <ShortName>SCHEDULE OF LONG TERM DEPOSITS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>00000060 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails</Role>
      <ShortName>SCHEDULE OF EQUITY METHOD INVESTMENT (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>00000061 - Disclosure - SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails</Role>
      <ShortName>SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>00000062 - Disclosure - SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails</Role>
      <ShortName>SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>00000063 - Disclosure - INVESTMENTS (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/InvestmentsDetailsNarrative</Role>
      <ShortName>INVESTMENTS (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/InvestmentsTables</ParentRole>
      <Position>63</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>00000064 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative</Role>
      <ShortName>SHORT-TERM LINE OF CREDIT (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/Short-termLineOfCredit</ParentRole>
      <Position>64</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>00000065 - Disclosure - SCHEDULE OF INTEREST LOAN REPAYMENT (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails</Role>
      <ShortName>SCHEDULE OF INTEREST LOAN REPAYMENT (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>00000066 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails</Role>
      <ShortName>SCHEDULE OF LOAN COVENANTS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>00000067 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails</Role>
      <ShortName>SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>00000068 - Disclosure - LONG TERM DEBT (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative</Role>
      <ShortName>LONG TERM DEBT (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/LongTermDepositsTables</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>00000069 - Disclosure - CONVERTIBLE NOTE PAYABLE (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative</Role>
      <ShortName>CONVERTIBLE NOTE PAYABLE (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/ConvertibleNotePayable</ParentRole>
      <Position>69</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>00000070 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails</Role>
      <ShortName>SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>00000071 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails</Role>
      <ShortName>SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>00000072 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails</Role>
      <ShortName>SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>00000073 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails</Role>
      <ShortName>SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>00000074 - Disclosure - INCOME TAXES (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative</Role>
      <ShortName>INCOME TAXES (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/IncomeTaxesTables</ParentRole>
      <Position>74</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>00000075 - Disclosure - SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails</Role>
      <ShortName>SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>00000076 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails</Role>
      <ShortName>SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>00000077 - Disclosure - INCOME PER SHARE (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative</Role>
      <ShortName>INCOME PER SHARE (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/IncomePerShareTables</ParentRole>
      <Position>77</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>00000078 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails</Role>
      <ShortName>SCHEDULE OF STOCK OPTION ACTIVITIES (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>78</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>00000079 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails</Role>
      <ShortName>SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>79</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>00000080 - Disclosure - STOCK OPTIONS (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/StockOptionsDetailsNarrative</Role>
      <ShortName>STOCK OPTIONS (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/StockOptionsTables</ParentRole>
      <Position>80</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>00000081 - Disclosure - CAPITAL STOCK (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/CapitalStockDetailsNarrative</Role>
      <ShortName>CAPITAL STOCK (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/CapitalStock</ParentRole>
      <Position>81</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>00000082 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails</Role>
      <ShortName>SCHEDULE OF DISTRIBUTIONS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>00000083 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative</Role>
      <ShortName>NON-CONTROLLING INTERESTS (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/Non-controllingInterestsTables</ParentRole>
      <Position>83</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>00000084 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails</Role>
      <ShortName>SCHEDULE OF REPORTABLE SEGMENTS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>00000085 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails</Role>
      <ShortName>SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>85</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>00000086 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails</Role>
      <ShortName>SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>86</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>00000087 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative</Role>
      <ShortName>SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables</ParentRole>
      <Position>87</Position>
    </Report>
    <Report instance="form10-ka.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>00000088 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative</Role>
      <ShortName>SUBSEQUENT EVENTS (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/SubsequentEvents</ParentRole>
      <Position>88</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="10-K/A" original="form10-ka.htm">form10-ka.htm</File>
    <File>ex23-1.htm</File>
    <File>ex31-1.htm</File>
    <File>ex31-2.htm</File>
    <File>ex32-1.htm</File>
    <File>fsi-20211231.xsd</File>
    <File>fsi-20211231_cal.xml</File>
    <File>fsi-20211231_def.xml</File>
    <File>fsi-20211231_lab.xml</File>
    <File>fsi-20211231_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="906">http://fasb.org/us-gaap/2021-01-31</BaseTaxonomy>
    <BaseTaxonomy items="37">http://xbrl.sec.gov/dei/2021q4</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>106
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "form10-ka.htm": {
   "axisCustom": 0,
   "axisStandard": 27,
   "contextCount": 280,
   "dts": {
    "calculationLink": {
     "local": [
      "fsi-20211231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "fsi-20211231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "form10-ka.htm"
     ]
    },
    "labelLink": {
     "local": [
      "fsi-20211231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "fsi-20211231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "fsi-20211231.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/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-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/2021/elts/srt-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd",
      "https://xbrl.sec.gov/country/2021/country-2021.xsd",
      "https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd"
     ]
    }
   },
   "elementCount": 632,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2021-01-31": 77,
    "http://flexiblesolutions.com/20211231": 9,
    "http://xbrl.sec.gov/dei/2021q4": 4,
    "total": 90
   },
   "keyCustom": 58,
   "keyStandard": 336,
   "memberCustom": 55,
   "memberStandard": 34,
   "nsprefix": "FSI",
   "nsuri": "http://flexiblesolutions.com/20211231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "b",
       "span",
       "p",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "00000001 - Document - Cover",
     "role": "http://flexiblesolutions.com/role/Cover",
     "shortName": "Cover",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "b",
       "span",
       "p",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinancingReceivablesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000010 - Disclosure - ACCOUNTS RECEIVABLE",
     "role": "http://flexiblesolutions.com/role/AccountsReceivable",
     "shortName": "ACCOUNTS RECEIVABLE",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinancingReceivablesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000011 - Disclosure - INVENTORIES",
     "role": "http://flexiblesolutions.com/role/Inventories",
     "shortName": "INVENTORIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000012 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS",
     "role": "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds",
     "shortName": "PROPERTY, EQUIPMENT AND LEASEHOLDS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000013 - Disclosure - PATENTS",
     "role": "http://flexiblesolutions.com/role/Patents",
     "shortName": "PATENTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000014 - Disclosure - GOODWILL AND INTANGIBLE ASSETS",
     "role": "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets",
     "shortName": "GOODWILL AND INTANGIBLE ASSETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:LongTermDepositsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000015 - Disclosure - LONG TERM DEPOSITS",
     "role": "http://flexiblesolutions.com/role/LongTermDeposits",
     "shortName": "LONG TERM DEPOSITS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:LongTermDepositsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000016 - Disclosure - INVESTMENTS",
     "role": "http://flexiblesolutions.com/role/Investments",
     "shortName": "INVESTMENTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShortTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000017 - Disclosure - SHORT-TERM LINE OF CREDIT",
     "role": "http://flexiblesolutions.com/role/Short-termLineOfCredit",
     "shortName": "SHORT-TERM LINE OF CREDIT",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShortTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000018 - Disclosure - LONG TERM DEBT",
     "role": "http://flexiblesolutions.com/role/LongTermDebt",
     "shortName": "LONG TERM DEBT",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000019 - Disclosure - CONVERTIBLE NOTE PAYABLE",
     "role": "http://flexiblesolutions.com/role/ConvertibleNotePayable",
     "shortName": "CONVERTIBLE NOTE PAYABLE",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000002 - Statement - Consolidated Balance Sheets",
     "role": "http://flexiblesolutions.com/role/BalanceSheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000020 - Disclosure - INCOME TAXES",
     "role": "http://flexiblesolutions.com/role/IncomeTaxes",
     "shortName": "INCOME TAXES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000021 - Disclosure - INCOME PER SHARE",
     "role": "http://flexiblesolutions.com/role/IncomePerShare",
     "shortName": "INCOME PER SHARE",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000022 - Disclosure - STOCK OPTIONS",
     "role": "http://flexiblesolutions.com/role/StockOptions",
     "shortName": "STOCK OPTIONS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000023 - Disclosure - CAPITAL STOCK",
     "role": "http://flexiblesolutions.com/role/CapitalStock",
     "shortName": "CAPITAL STOCK",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MinorityInterestDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000024 - Disclosure - NON-CONTROLLING INTERESTS",
     "role": "http://flexiblesolutions.com/role/Non-controllingInterests",
     "shortName": "NON-CONTROLLING INTERESTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MinorityInterestDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000025 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY",
     "role": "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency",
     "shortName": "SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000026 - Disclosure - SUBSEQUENT EVENTS",
     "role": "http://flexiblesolutions.com/role/SubsequentEvents",
     "shortName": "SUBSEQUENT EVENTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "role": "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies",
     "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfMethodOfDepreciationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000028 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)",
     "role": "http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables",
     "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfMethodOfDepreciationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000029 - Disclosure - LEASES (Tables)",
     "role": "http://flexiblesolutions.com/role/LeasesTables",
     "shortName": "LEASES (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000003 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "role": "http://flexiblesolutions.com/role/BalanceSheetsParenthetical",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:FinancingReceivablesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000030 - Disclosure - ACCOUNTS RECEIVABLE (Tables)",
     "role": "http://flexiblesolutions.com/role/AccountsReceivableTables",
     "shortName": "ACCOUNTS RECEIVABLE (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:FinancingReceivablesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000031 - Disclosure - INVENTORIES (Tables)",
     "role": "http://flexiblesolutions.com/role/InventoriesTables",
     "shortName": "INVENTORIES (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000032 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Tables)",
     "role": "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables",
     "shortName": "PROPERTY, EQUIPMENT AND LEASEHOLDS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000033 - Disclosure - PATENTS (Tables)",
     "role": "http://flexiblesolutions.com/role/PatentsTables",
     "shortName": "PATENTS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000034 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)",
     "role": "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables",
     "shortName": "GOODWILL AND INTANGIBLE ASSETS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "FSI:LongTermDepositsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfLongTermDepositsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000035 - Disclosure - LONG TERM DEPOSITS (Tables)",
     "role": "http://flexiblesolutions.com/role/LongTermDepositsTables",
     "shortName": "LONG TERM DEPOSITS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "FSI:LongTermDepositsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfLongTermDepositsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EquityMethodInvestmentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000036 - Disclosure - INVESTMENTS (Tables)",
     "role": "http://flexiblesolutions.com/role/InvestmentsTables",
     "shortName": "INVESTMENTS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EquityMethodInvestmentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfLoanCovenantsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000037 - Disclosure - LONG TERM DEBT (Tables)",
     "role": "http://flexiblesolutions.com/role/LongTermDebtTables",
     "shortName": "LONG TERM DEBT (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfLoanCovenantsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000038 - Disclosure - INCOME TAXES (Tables)",
     "role": "http://flexiblesolutions.com/role/IncomeTaxesTables",
     "shortName": "INCOME TAXES (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000039 - Disclosure - INCOME PER SHARE (Tables)",
     "role": "http://flexiblesolutions.com/role/IncomePerShareTables",
     "shortName": "INCOME PER SHARE (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000004 - Statement - Consolidated Statements of Income and Comprehensive Income",
     "role": "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome",
     "shortName": "Consolidated Statements of Income and Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:GrossProfit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000040 - Disclosure - STOCK OPTIONS (Tables)",
     "role": "http://flexiblesolutions.com/role/StockOptionsTables",
     "shortName": "STOCK OPTIONS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:MinorityInterestDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfDistributionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000041 - Disclosure - NON-CONTROLLING INTERESTS (Tables)",
     "role": "http://flexiblesolutions.com/role/Non-controllingInterestsTables",
     "shortName": "NON-CONTROLLING INTERESTS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:MinorityInterestDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfDistributionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000042 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)",
     "role": "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables",
     "shortName": "SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2018-01-012018-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationConsiderationTransferred1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000043 - Disclosure - BASIS OF PRESENTATION (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
     "shortName": "BASIS OF PRESENTATION (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2018-01-012018-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationConsiderationTransferred1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfMethodOfDepreciationTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_us-gaap_ComputerEquipmentMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:DepreciationMethodUsedAndAnnualRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000044 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
     "shortName": "SCHEDULE OF METHOD OF DEPRECIATION (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfMethodOfDepreciationTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_us-gaap_ComputerEquipmentMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:DepreciationMethodUsedAndAnnualRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000045 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative",
     "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:EquityMethodInvestmentsPolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "lang": "en-US",
      "name": "us-gaap:EquityMethodInvestmentDescriptionOfPrincipalActivities",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000046 - Disclosure - SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)",
     "role": "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails",
     "shortName": "SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "FSI:SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2019-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000047 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails",
     "shortName": "SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000048 - Disclosure - LEASES (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/LeasesDetailsNarrative",
     "shortName": "LEASES (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
       "us-gaap:FinancingReceivablesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000049 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails",
     "shortName": "SCHEDULE OF ACCOUNTS RECEIVABLE (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
       "us-gaap:FinancingReceivablesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000005 - Statement - Consolidated Statements of Cash Flows",
     "role": "http://flexiblesolutions.com/role/StatementsOfCashFlows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryFinishedGoods",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000050 - Disclosure - SCHEDULE OF INVENTORIES (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails",
     "shortName": "SCHEDULE OF INVENTORIES (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryFinishedGoods",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000051 - Disclosure -  SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails",
     "shortName": "SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_custom_BuildingAndImprovementsMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000052 - Disclosure - PROPERTY, EQUIPMENT AND LEASEHOLDS (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative",
     "shortName": "PROPERTY, EQUIPMENT AND LEASEHOLDS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedPatentsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000053 - Disclosure - SCHEDULE OF PATENTS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfPatentsDetails",
     "shortName": "SCHEDULE OF PATENTS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedPatentsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000054 - Disclosure - SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails",
     "shortName": "SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000055 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails",
     "shortName": "SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000056 - Disclosure - PATENTS (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/PatentsDetailsNarrative",
     "shortName": "PATENTS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_custom_CADMember",
      "decimals": "0",
      "lang": null,
      "name": "FSI:IncreaseInCurrencyConversion",
      "reportCount": 1,
      "unique": true,
      "unitRef": "CAD",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000057 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails",
     "shortName": "SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_us-gaap_FiniteLivedIntangibleAssetsMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_CustomerRelationshipsMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000058 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative",
     "shortName": "GOODWILL AND INTANGIBLE ASSETS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_EnpnvestmentsLlcMember_us-gaap_CustomerRelationshipsMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DepositsAssetsNoncurrent",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000059 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails",
     "shortName": "SCHEDULE OF LONG TERM DEPOSITS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2019-12-31_us-gaap_CommonStockMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000006 - Statement - Consolidated Statements of Stockholders' Equity",
     "role": "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity",
     "shortName": "Consolidated Statements of Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2019-12-31_us-gaap_CommonStockMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:EquityMethodInvestments",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000060 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
     "shortName": "SCHEDULE OF EQUITY METHOD INVESTMENT (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:EquityMethodInvestmentsTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2019-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:EquityMethodInvestments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:GainLossOnInvestmentsTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:GainsLossesOnSalesOfInvestmentRealEstate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000061 - Disclosure - SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)",
     "role": "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails",
     "shortName": "SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:GainLossOnInvestmentsTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:GainsLossesOnSalesOfInvestmentRealEstate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "FSI:InvestmentEliminatedUponConsolidation",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000062 - Disclosure - SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails",
     "shortName": "SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-12-31_custom_EnpRealtyLLCMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners",
      "reportCount": 1,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000063 - Disclosure - INVESTMENTS (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
     "shortName": "INVESTMENTS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ProceedsFromContributionsFromAffiliates",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LinesOfCreditCurrent",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000064 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative",
     "shortName": "SHORT-TERM LINE OF CREDIT (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:ShortTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember",
      "decimals": "INF",
      "lang": null,
      "name": "FSI:LoanGuaranteedRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000065 - Disclosure - SCHEDULE OF INTEREST LOAN REPAYMENT (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails",
     "shortName": "SCHEDULE OF INTEREST LOAN REPAYMENT (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-10-31_custom_PromissoryNoteOneWithMidlandBankMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfLoanCovenantsTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000066 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails",
     "shortName": "SCHEDULE OF LOAN COVENANTS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfLoanCovenantsTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2020-01-012020-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ProceedsFromLoans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfLoanCovenantsTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000067 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails",
     "shortName": "SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-12-31_custom_MidlandStatesBankMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:EquityMethodInvestmentOwnershipPercentage",
      "reportCount": 1,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000068 - Disclosure - LONG TERM DEBT (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
     "shortName": "LONG TERM DEBT (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-04-30_custom_HarrisBankMember_custom_EnpInvestmentsLLCMember",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:DebtInstrumentInterestRateStatedPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2019-06-012019-06-30_srt_ParentCompanyMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtConversionConvertedInstrumentSharesIssued1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000069 - Disclosure - CONVERTIBLE NOTE PAYABLE (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative",
     "shortName": "CONVERTIBLE NOTE PAYABLE (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2019-06-012019-06-30_srt_ParentCompanyMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtConversionConvertedInstrumentSharesIssued1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000007 - Disclosure - BASIS OF PRESENTATION",
     "role": "http://flexiblesolutions.com/role/BasisOfPresentation",
     "shortName": "BASIS OF PRESENTATION",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000070 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails",
     "shortName": "SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000071 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails",
     "shortName": "SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000072 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails",
     "shortName": "SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000073 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails",
     "shortName": "SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfNonOperatingLossCarryforwardsTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_custom_TwoThousandTwentyNineTaxYearMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000074 - Disclosure - INCOME TAXES (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
     "shortName": "INCOME TAXES (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000075 - Disclosure - SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
     "shortName": "SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000076 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails",
     "shortName": "SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "span",
       "span",
       "span",
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockSharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000077 - Disclosure - INCOME PER SHARE (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative",
     "shortName": "INCOME PER SHARE (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "span",
       "span",
       "span",
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockSharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000078 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
     "shortName": "SCHEDULE OF STOCK OPTION ACTIVITIES (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2019-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000079 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails",
     "shortName": "SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000008 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES",
     "role": "http://flexiblesolutions.com/role/SignificantAccountingPolicies",
     "shortName": "SIGNIFICANT ACCOUNTING POLICIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000080 - Disclosure - STOCK OPTIONS (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative",
     "shortName": "STOCK OPTIONS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000081 - Disclosure - CAPITAL STOCK (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative",
     "shortName": "CAPITAL STOCK (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_EmployeesStockOptionMember",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:MinorityInterest",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000082 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails",
     "shortName": "SCHEDULE OF DISTRIBUTIONS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfDistributionsTableTextBlock",
       "us-gaap:MinorityInterestDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2019-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:MinorityInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:PaymentsToMinorityShareholders",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000083 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
     "shortName": "NON-CONTROLLING INTERESTS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:MinorityInterestDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31_custom_EnpnvestmentsLlcMember",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:MinorityInterestOwnershipPercentageByParent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000084 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
     "shortName": "SCHEDULE OF REPORTABLE SEGMENTS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_us-gaap_CorporateAndOtherMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000085 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails",
     "shortName": "SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_country_CA",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NoncurrentAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000086 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES (Details)",
     "role": "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails",
     "shortName": "SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NoncurrentAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R87": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_ThreeCustomersMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "FSI:StockOptionExercisePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000087 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative",
     "shortName": "SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-012021-12-31_custom_ThreeCustomersMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "FSI:StockOptionExercisePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R88": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000088 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)",
     "role": "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative",
     "shortName": "SUBSEQUENT EVENTS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:SubsequentEventsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2022-01-012022-03-29_custom_EmployeeMember_us-gaap_SubsequentEventMember",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000009 - Disclosure - LEASES",
     "role": "http://flexiblesolutions.com/role/Leases",
     "shortName": "LEASES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-ka.htm",
      "contextRef": "From2021-01-01to2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 92,
   "tag": {
    "FSI_AdditionalExpensesDueToOptionsGranted": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional expenses due to options granted.",
        "label": "Additional expenses due to options granted"
       }
      }
     },
     "localname": "AdditionalExpensesDueToOptionsGranted",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_AdditionalPayment": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional payment.",
        "label": "Additional payment"
       }
      }
     },
     "localname": "AdditionalPayment",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_AppliedHoldingCorpMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Applied Holding Corp [Member]",
        "label": "Applied Holding Corp [Member]"
       }
      }
     },
     "localname": "AppliedHoldingCorpMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_BCPAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "BCPA [Member]",
        "label": "BCPA [Member]"
       }
      }
     },
     "localname": "BCPAMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_BadDebtExpense": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Bad debt expense.",
        "label": "Bad debt expense [Default Label]",
        "negatedLabel": "Bad debt expense"
       }
      }
     },
     "localname": "BadDebtExpense",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_BoatMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boat [Member]",
        "label": "Boat [Member]"
       }
      }
     },
     "localname": "BoatMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_BuildingAndImprovementsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Building and improvements [Member]",
        "label": "Building and improvements [Member]"
       }
      }
     },
     "localname": "BuildingAndImprovementsMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_CADMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "CAD [Member]",
        "label": "CAD [Member]"
       }
      }
     },
     "localname": "CADMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_CapitalInExcessOfParValueMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Capital In Excess Of Par Value [Member]",
        "label": "Capital In Excess Of Par Value [Member]"
       }
      }
     },
     "localname": "CapitalInExcessOfParValueMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_Commissions": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 13.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commissions.",
        "label": "Commissions"
       }
      }
     },
     "localname": "Commissions",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_ConcentrationRiskThresholdPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Concentration Risk Threshold Percentage.",
        "label": "[custom:ConcentrationRiskThresholdPercentage]"
       }
      }
     },
     "localname": "ConcentrationRiskThresholdPercentage",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_ConsultantsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Consultants [Member]",
        "label": "Consultants [Member]"
       }
      }
     },
     "localname": "ConsultantsMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_ConsultantsStockOptionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Consultants Stock Options [Member]",
        "label": "Consultants Stock Options [Member]"
       }
      }
     },
     "localname": "ConsultantsStockOptionsMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_Consulting": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 5.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Consulting.",
        "label": "Consulting"
       }
      }
     },
     "localname": "Consulting",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_CustomerRelationshipsENPInvestmentsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer Relationships - ENP Investments [Member]",
        "label": "Customer Relationships - ENP Investments [Member]"
       }
      }
     },
     "localname": "CustomerRelationshipsENPInvestmentsMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_DeferredTaxAssetLiabilitiesNet": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.",
        "label": "Net deferred tax asset (liability)"
       }
      }
     },
     "localname": "DeferredTaxAssetLiabilitiesNet",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_DeferredTaxAssetNet": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Net Deferred tax asset"
       }
      }
     },
     "localname": "DeferredTaxAssetNet",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_DeferredTaxAssetNotRecognized": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax asset not recognized.",
        "label": "Deferred tax asset not recognized"
       }
      }
     },
     "localname": "DeferredTaxAssetNotRecognized",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_DeferredTaxAssetsLiabilitiesGross": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Tax Assets Liabilities Gross.",
        "label": "Deferred tax asset (liability)"
       }
      }
     },
     "localname": "DeferredTaxAssetsLiabilitiesGross",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_DeferredTaxAssetsPropertyPlantsAndEquipment": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.",
        "label": "Property, equipment and leaseholds"
       }
      }
     },
     "localname": "DeferredTaxAssetsPropertyPlantsAndEquipment",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.",
        "label": "DeferredTaxAssetsPropertyPlantsAndEquipmentOne",
        "verboseLabel": "Property, equipment and leaseholds"
       }
      }
     },
     "localname": "DeferredTaxAssetsPropertyPlantsAndEquipmentOne",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_DepreciationMethodUsedAndAnnualRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Depreciation method used and annual rate.",
        "label": "Depreciation method used and annual rate"
       }
      }
     },
     "localname": "DepreciationMethodUsedAndAnnualRate",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "FSI_DisclosureLeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases",
        "terseLabel": "Schedule Of Undiscounted Rent Payments",
        "verboseLabel": "Summary Of Right-of-use Asset And Lease Liability"
       }
      }
     },
     "localname": "DisclosureLeasesAbstract",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "xbrltype": "stringItemType"
    },
    "FSI_DisclosureLongTermDepositsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long Term Deposits",
        "verboseLabel": "Schedule Of Long Term Deposits"
       }
      }
     },
     "localname": "DisclosureLongTermDepositsAbstract",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "xbrltype": "stringItemType"
    },
    "FSI_EWCPMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "EWCP [Member]",
        "label": "EWCP [Member]"
       }
      }
     },
     "localname": "EWCPMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EligiblePercentageOfDomesticAccountsReceivable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Eligible percentage of domestic accounts receivable.",
        "label": "Eligible percentage of domestic accounts receivable"
       }
      }
     },
     "localname": "EligiblePercentageOfDomesticAccountsReceivable",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_EmployeeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employee [Member]",
        "label": "Employee [Member]"
       }
      }
     },
     "localname": "EmployeeMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EmployeesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employees [Member]",
        "label": "Employees [Member]"
       }
      }
     },
     "localname": "EmployeesMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EmployeesStockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Employees Stock Option [Member]",
        "label": "Employees Stock Option [Member]"
       }
      }
     },
     "localname": "EmployeesStockOptionMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EnPInvestmentsCorporationLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "EnP Investments Limited Liability Corporation (LLC) [Member]",
        "label": "EnP Investments Limited Liability Corporation (LLC) [Member]"
       }
      }
     },
     "localname": "EnPInvestmentsCorporationLLCMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EnpInvestmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ENP Investment [Member]",
        "label": "ENP Investment [Member]"
       }
      }
     },
     "localname": "EnpInvestmentMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EnpInvestmentsLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Enp Investments LLC [Member]",
        "label": "Enp Investments LLC [Member]"
       }
      }
     },
     "localname": "EnpInvestmentsLLCMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EnpInvestmentsLlcAndEnpMendotaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Enp Investments Llc And Enp Mendota [Member]",
        "label": "Enp Investments Llc And Enp Mendota [Member]"
       }
      }
     },
     "localname": "EnpInvestmentsLlcAndEnpMendotaMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EnpPeruInvestmentsLlcMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Enp Peru Investments Llc [Member]",
        "label": "Enp Peru Investments Llc [Member]"
       }
      }
     },
     "localname": "EnpPeruInvestmentsLlcMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsTables",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EnpRealtyLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Enp Realty LLC [Member]",
        "label": "Enp Realty LLC [Member]"
       }
      }
     },
     "localname": "EnpRealtyLLCMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsTables",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EnpnvestmentsLlcMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ENP Investments LLC [Member]",
        "label": "ENP Investments LLC [Member]"
       }
      }
     },
     "localname": "EnpnvestmentsLlcMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EquityMethodInvestmentReturnOfEquity": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Return of equity.",
        "label": "Return of equity"
       }
      }
     },
     "localname": "EquityMethodInvestmentReturnOfEquity",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_ExpectedIncomeTaxRecovery": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expected income tax (recovery).",
        "label": "Expected income tax"
       }
      }
     },
     "localname": "ExpectedIncomeTaxRecovery",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_FiniteLivedPatentGross": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finite lived patent gross.",
        "label": "Patents (Note 7)"
       }
      }
     },
     "localname": "FiniteLivedPatentGross",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_FloridaBasedLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Florida Based LLC [Member]",
        "label": "Florida Based LLC [Member]"
       }
      }
     },
     "localname": "FloridaBasedLLCMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsTables",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_FordMotorCreditCompanyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Ford Motor Credit Company [Member]",
        "label": "Ford Motor Credit Company [Member]"
       }
      }
     },
     "localname": "FordMotorCreditCompanyMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_GainLossOnInvestment": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain loss on investment.",
        "label": "GainLossOnInvestment",
        "negatedLabel": "Gain on investments"
       }
      }
     },
     "localname": "GainLossOnInvestment",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_GainLossOnSaleOfLand": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain loss on sale of land",
        "label": "Gain on sale of land (Note 6)",
        "negatedLabel": "Gain on sale of land"
       }
      }
     },
     "localname": "GainLossOnSaleOfLand",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_GainOnAcquisition": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 6.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain on acquisition",
        "label": "Gain on acquisition of ENP Realty (Note 10)"
       }
      }
     },
     "localname": "GainOnAcquisition",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_GainOnAcquisitionOfEnpRealty": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain on acquisition of ENP Realty.",
        "label": "Gain on acquisition of ENP Realty"
       }
      }
     },
     "localname": "GainOnAcquisitionOfEnpRealty",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_GainOnInvestments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain on investments",
        "label": "Recognized gains"
       }
      }
     },
     "localname": "GainOnInvestments",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_HarrisBankMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Harris Bank [Member]",
        "label": "Harris Bank [Member]"
       }
      }
     },
     "localname": "HarrisBankMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_HarrisBankOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Harris Bank [Member]",
        "label": "Harris Bank One [Member]"
       }
      }
     },
     "localname": "HarrisBankOneMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_IncreaseInCurrencyConversion": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase in currency conversion.",
        "label": "Increase in currency conversion"
       }
      }
     },
     "localname": "IncreaseInCurrencyConversion",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_InterestExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 8.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest expenses.",
        "label": "Interest expense"
       }
      }
     },
     "localname": "InterestExpenses",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory additions in accounts payable and accrued liabilities",
        "label": "Inventory additions in accounts payable and accrued liabilities"
       }
      }
     },
     "localname": "InventoryAdditionsInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_InvestmentEliminatedUponConsolidation": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Investment Eliminated Upon Consolidation.",
        "label": "Investment eliminated upon consolidation"
       }
      }
     },
     "localname": "InvestmentEliminatedUponConsolidation",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_InvestorRelationsAndTransferAgentFee": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 12.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Investor relations and transfer agent fee.",
        "label": "Investor relations and transfer agent fee"
       }
      }
     },
     "localname": "InvestorRelationsAndTransferAgentFee",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_LeaseInterestExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lease interest expense.",
        "label": "Lease interest expense"
       }
      }
     },
     "localname": "LeaseInterestExpense",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_LeaseRightOfUseFinancing": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lease right of use financing.",
        "label": "Lease right of use financing"
       }
      }
     },
     "localname": "LeaseRightOfUseFinancing",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_LoanGuaranteedRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Loan guaranteed rate.",
        "label": "Loan guaranteed rate"
       }
      }
     },
     "localname": "LoanGuaranteedRate",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_LongTermDepositsTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Long Term Deposits [Text Block]",
        "label": "LONG TERM DEPOSITS"
       }
      }
     },
     "localname": "LongTermDepositsTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDeposits"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_LygosIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lygos Inc [Member]",
        "label": "Lygos Inc [Member]"
       }
      }
     },
     "localname": "LygosIncMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsTables",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_MidlandBankMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Midland Bank [Member]",
        "label": "Midland Bank [Member]"
       }
      }
     },
     "localname": "MidlandBankMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_MidlandStatesBankMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Midland States Bank [Member]",
        "label": "Midland States Bank [Member]"
       }
      }
     },
     "localname": "MidlandStatesBankMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_MidlandStatesBankOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Midland States Bank One [Member]",
        "label": "Midland States Bank One [Member]"
       }
      }
     },
     "localname": "MidlandStatesBankOneMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_MidlandStatesBankTwoMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Midland States Bank Two [Member]",
        "label": "Midland States Bank Two [Member]"
       }
      }
     },
     "localname": "MidlandStatesBankTwoMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_NanoChemSolutionIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "NanoChem Solutions Inc [Member]",
        "label": "NanoChem Solutions Inc [Member]"
       }
      }
     },
     "localname": "NanoChemSolutionIncMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_NanoChemSolutionsIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "NanoChem Solutions Inc [Member]",
        "label": "NanoChem Solutions Inc [Member] [Default Label]",
        "verboseLabel": "NanoChem Solutions Inc [Member]"
       }
      }
     },
     "localname": "NanoChemSolutionsIncMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_NewAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "New Agreement [Member]",
        "label": "New Agreement [Member]"
       }
      }
     },
     "localname": "NewAgreementMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_OperatingLeaseAssetsAddition": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating lease assets addition.",
        "label": "Addition"
       }
      }
     },
     "localname": "OperatingLeaseAssetsAddition",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_OperatingLeasesAssetsTermination": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating leases assets termination.",
        "label": "Termination"
       }
      }
     },
     "localname": "OperatingLeasesAssetsTermination",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_OperatingLeasesLiabilityAddition": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating leases liability addition.",
        "label": "OperatingLeasesLiabilityAddition",
        "verboseLabel": "Addition"
       }
      }
     },
     "localname": "OperatingLeasesLiabilityAddition",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_OperatingLeasesLiabilityTermination": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating leases liability termination",
        "label": "OperatingLeasesLiabilityTermination",
        "verboseLabel": "Termination"
       }
      }
     },
     "localname": "OperatingLeasesLiabilityTermination",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_OwnershipInterestPurchaseAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Ownership Interest Purchase Agreement [Member]",
        "label": "Ownership Interest Purchase Agreement [Member]"
       }
      }
     },
     "localname": "OwnershipInterestPurchaseAgreementMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_PaycheckProtectionProgramLoanForgiveness": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Paycheck protection program loan forgiveness.",
        "label": "PaycheckProtectionProgramLoanForgiveness",
        "negatedLabel": "PPP loan forgiveness"
       }
      }
     },
     "localname": "PaycheckProtectionProgramLoanForgiveness",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_PaycheckProtectionProgramMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Paycheck Protection Program [Member]",
        "label": "Paycheck Protection Program [Member]"
       }
      }
     },
     "localname": "PaycheckProtectionProgramMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_PaycheckProtectionProgramOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Paycheck Protection Program One",
        "label": "Paycheck Protection Program One [Member]"
       }
      }
     },
     "localname": "PaycheckProtectionProgramOneMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_PaymentOfMonthlyInstallmentsInterestRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payment of monthly installments interest rate.",
        "label": "Payment of monthly installments interest rate"
       }
      }
     },
     "localname": "PaymentOfMonthlyInstallmentsInterestRate",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_PercentageOfForeignAccountsReceivableOfInventory": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of foreign accounts receivable of inventory.",
        "label": "Percentage of foreign accounts receivable of inventory"
       }
      }
     },
     "localname": "PercentageOfForeignAccountsReceivableOfInventory",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_PppLoanForgiveness": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Ppp loan forgiveness.",
        "label": "PPP loan forgiveness (Note 12)"
       }
      }
     },
     "localname": "PppLoanForgiveness",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_ProceedsFromLoanAcquiredWithAcquisition": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plus: Loan acquired with acquisition of ENP Realty.",
        "label": "Plus: Loan acquired with acquisition of ENP Realty"
       }
      }
     },
     "localname": "ProceedsFromLoanAcquiredWithAcquisition",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_PromissoryNoteOneWithMidlandBankMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Promissory Note One With Midland Bank [Member]",
        "label": "Promissory Note One With Midland Bank [Member]"
       }
      }
     },
     "localname": "PromissoryNoteOneWithMidlandBankMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtTables",
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_PromissoryNoteWithMidlandBankMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Promissory Note With Midland Bank [Member]",
        "label": "Promissory Note With Midland Bank [Member]"
       }
      }
     },
     "localname": "PromissoryNoteWithMidlandBankMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtTables",
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_RealizedInvestmentGainsLossesNet": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net income.",
        "label": "RealizedInvestmentGainsLossesNet",
        "verboseLabel": "Net income"
       }
      }
     },
     "localname": "RealizedInvestmentGainsLossesNet",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_ScheduleOfDistributionsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Distributions [Table Text Block]",
        "label": "SCHEDULE OF DISTRIBUTIONS"
       }
      }
     },
     "localname": "ScheduleOfDistributionsTableTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Estimated Future Amortization Expense [Table Text Block]",
        "label": "SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE"
       }
      }
     },
     "localname": "ScheduleOfEstimatedFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_ScheduleOfLoanCovenantsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Loan Covenants [Table Text Block]",
        "label": "SCHEDULE OF LOAN COVENANTS"
       }
      }
     },
     "localname": "ScheduleOfLoanCovenantsTableTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_ScheduleOfLongTermDepositsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Long Term Deposits [Table Text Block]",
        "label": "SCHEDULE OF LONG TERM DEPOSITS"
       }
      }
     },
     "localname": "ScheduleOfLongTermDepositsTableTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDepositsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_ScheduleOfMethodOfDepreciationTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Method Of Depreciation [Table Text Block]",
        "label": "SCHEDULE OF METHOD OF DEPRECIATION"
       }
      }
     },
     "localname": "ScheduleOfMethodOfDepreciationTableTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Non Operating Loss Carryforwards [Table Text Block]",
        "label": "SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS"
       }
      }
     },
     "localname": "ScheduleOfNonOperatingLossCarryforwardsTableTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Recognized Identified Assets Acquired And Liabilities Assumed [Table Text Block]",
        "label": "SCHEDULE OF FAIR VALUES OF ASSETS ACQUIRED AND LIABILITIES ASSUMPTION"
       }
      }
     },
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_Segmentassets": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Segment assets.",
        "label": "Segment assets"
       }
      }
     },
     "localname": "Segmentassets",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cancelled or expired, Exercise price per share.",
        "label": "Exercise price per share, Cancelled or expired"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercised, Exercise price per share.",
        "label": "Exercise price per share, Exercised"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercise price per share, Granted.",
        "label": "Exercise price per share, Granted"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercise price per share.",
        "label": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice",
        "periodEndLabel": "Exercise price per share Exercisable, Ending Balance"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercise price per share.",
        "label": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice",
        "periodEndLabel": "Exercise price per share, Ending Balance",
        "periodStartLabel": "Exercise price per share, Beginning Balance"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "FSI_ShippingCost": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 17.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Shipping cost.",
        "label": "Shipping"
       }
      }
     },
     "localname": "ShippingCost",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_SoftwareENPInvestmentsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Software - ENP Investments [Member]",
        "label": "Software - ENP Investments [Member]"
       }
      }
     },
     "localname": "SoftwareENPInvestmentsMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_StockIssuedInExchangeForServicesPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock issued in exchange for services [Policy Text Block]",
        "label": "Stock Issued in Exchange for Services"
       }
      }
     },
     "localname": "StockIssuedInExchangeForServicesPolicyTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_StockOptionExercisePercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock option exercise percent",
        "label": "Accounted risk percentage"
       }
      }
     },
     "localname": "StockOptionExercisePercent",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_StockYardsBankTrustMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Yards Bank Trust [Member]",
        "label": "Stock Yards Bank Trust [Member]"
       }
      }
     },
     "localname": "StockYardsBankTrustMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary Of Rightofuse Asset And Lease Liability [Table Text Block]",
        "label": "SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY"
       }
      }
     },
     "localname": "SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_TermLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term Loan [Member]",
        "label": "Term Loan [Member]"
       }
      }
     },
     "localname": "TermLoanMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_ThreeCustomersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Three Customers [Member]",
        "label": "Three Customers [Member]"
       }
      }
     },
     "localname": "ThreeCustomersMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_ThreePrimaryCustomersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Three Primary Customers [Member]",
        "label": "Three Primary Customers [Member]"
       }
      }
     },
     "localname": "ThreePrimaryCustomersMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TrailerMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trailer [Member]",
        "label": "Trailer [Member]"
       }
      }
     },
     "localname": "TrailerMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TrioOpportunityCorpMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trio Opportunity Corp [Member]",
        "label": "Trio Opportunity Corp [Member]"
       }
      }
     },
     "localname": "TrioOpportunityCorpMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandFortyOneTaxYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2041 [Member]",
        "label": "2041 [Member]"
       }
      }
     },
     "localname": "TwoThousandFortyOneTaxYearMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandFortyTaxYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2040 [Member]",
        "label": "2040 [Member]"
       }
      }
     },
     "localname": "TwoThousandFortyTaxYearMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandThirtyEightTaxYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2038 [Member]",
        "label": "2038 [Member]"
       }
      }
     },
     "localname": "TwoThousandThirtyEightTaxYearMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandThirtyNineTaxYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2039 [Member]",
        "label": "2039 [Member]"
       }
      }
     },
     "localname": "TwoThousandThirtyNineTaxYearMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandThirtyOneTaxYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2031 [Member]",
        "label": "2031 [Member]"
       }
      }
     },
     "localname": "TwoThousandThirtyOneTaxYearMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandThirtySevenTaxYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2037 [Member]",
        "label": "2037 [Member]"
       }
      }
     },
     "localname": "TwoThousandThirtySevenTaxYearMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandThirtyTaxYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2030 [Member]",
        "label": "2030 [Member]"
       }
      }
     },
     "localname": "TwoThousandThirtyTaxYearMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandTwentyNineTaxYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2029 [Member]",
        "label": "2029 [Member]"
       }
      }
     },
     "localname": "TwoThousandTwentyNineTaxYearMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_UnitedStatesandAbroadMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "United States and Abroad [Member]",
        "label": "United States and Abroad [Member]"
       }
      }
     },
     "localname": "UnitedStatesandAbroadMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_UnrelatedPartyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unrelated Party [Member]",
        "label": "Unrelated Party [Member]"
       }
      }
     },
     "localname": "UnrelatedPartyMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_UponExerciseofStockOptionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Upon Exercise of Stock Options [Member]",
        "label": "Upon Exercise of Stock Options [Member]"
       }
      }
     },
     "localname": "UponExerciseofStockOptionsMember",
     "nsuri": "http://flexiblesolutions.com/20211231",
     "presentation": [
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "country_CA": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CANADA"
       }
      }
     },
     "localname": "CA",
     "nsuri": "http://xbrl.sec.gov/country/2021",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2021",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentDescription": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of changes contained within amended document.",
        "label": "Amendment Description"
       }
      }
     },
     "localname": "AmendmentDescription",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "stringItemType"
    },
    "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AnnualInformationForm": {
     "auth_ref": [
      "r668"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag with value true on a form if it is an annual report containing an annual information form.",
        "label": "Annual Information Form"
       }
      }
     },
     "localname": "AnnualInformationForm",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditedAnnualFinancialStatements": {
     "auth_ref": [
      "r668"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag with value true on a form if it is an annual report containing audited financial statements.",
        "label": "Audited Annual Financial Statements"
       }
      }
     },
     "localname": "AuditedAnnualFinancialStatements",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r665",
      "r667",
      "r668"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r665",
      "r667",
      "r668"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r665",
      "r667",
      "r668"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CountryRegion": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Region code of country",
        "label": "Country Region"
       }
      }
     },
     "localname": "CountryRegion",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.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/2021q4",
     "xbrltype": "stringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAccountingStandard": {
     "auth_ref": [
      "r667"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The basis of accounting the registrant has used to prepare the financial statements included in this filing This can either be 'U.S. GAAP', 'International Financial Reporting Standards', or 'Other'.",
        "label": "Document Accounting Standard"
       }
      }
     },
     "localname": "DocumentAccountingStandard",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "accountingStandardItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r665",
      "r667",
      "r668"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "gYearItemType"
    },
    "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentPeriodStartDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The start date of the period covered in the document, in YYYY-MM-DD format.",
        "label": "Document Period Start Date"
       }
      }
     },
     "localname": "DocumentPeriodStartDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r666"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an quarterly report.",
        "label": "Document Quarterly Report"
       }
      }
     },
     "localname": "DocumentQuarterlyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentRegistrationStatement": {
     "auth_ref": [
      "r654"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a registration statement.",
        "label": "Document Registration Statement"
       }
      }
     },
     "localname": "DocumentRegistrationStatement",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentShellCompanyEventDate": {
     "auth_ref": [
      "r667"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date of event requiring a shell company report.",
        "label": "Document Shell Company Event Date"
       }
      }
     },
     "localname": "DocumentShellCompanyEventDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentShellCompanyReport": {
     "auth_ref": [
      "r667"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true for a Shell Company Report pursuant to section 13 or 15(d) of the Exchange Act.",
        "label": "Document Shell Company Report"
       }
      }
     },
     "localname": "DocumentShellCompanyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r669"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "auth_ref": [
      "r657"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Documents incorporated by reference.",
        "label": "Documents Incorporated by Reference [Text Block]"
       }
      }
     },
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "textBlockItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 2 such as Street or Suite number",
        "label": "Entity Address, Address Line Two"
       }
      }
     },
     "localname": "EntityAddressAddressLine2",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine3": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 3 such as an Office Park",
        "label": "Entity Address, Address Line Three"
       }
      }
     },
     "localname": "EntityAddressAddressLine3",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCountry": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ISO 3166-1 alpha-2 country code.",
        "label": "Entity Address, Country"
       }
      }
     },
     "localname": "EntityAddressCountry",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "countryCodeItemType"
    },
    "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityBankruptcyProceedingsReportingCurrent": {
     "auth_ref": [
      "r660"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For registrants involved in bankruptcy proceedings during the preceding five years, the value Yes indicates that the registrant has filed all documents and reports required to be filed by Section 12, 13 or 15(d) of the Securities Exchange Act of 1934 subsequent to the distribution of securities under a plan confirmed by a court; the value No indicates the registrant has not.  Registrants not involved in bankruptcy proceedings during the preceding five years should not report this element.",
        "label": "Entity Bankruptcy Proceedings, Reporting Current"
       }
      }
     },
     "localname": "EntityBankruptcyProceedingsReportingCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r656"
     ],
     "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains."
       }
      }
     },
     "localname": "EntityDomain",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsTables",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative",
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r656"
     ],
     "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityExTransitionPeriod": {
     "auth_ref": [
      "r674"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards.",
        "label": "Elected Not To Use the Extended Transition Period"
       }
      }
     },
     "localname": "EntityExTransitionPeriod",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r656"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r671"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPrimarySicNumber": {
     "auth_ref": [
      "r668"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary Standard Industrial Classification (SIC) Number for the Entity.",
        "label": "Entity Primary SIC Number"
       }
      }
     },
     "localname": "EntityPrimarySicNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "sicNumberItemType"
    },
    "dei_EntityPublicFloat": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.",
        "label": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r656"
     ],
     "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r656"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r656"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r656"
     ],
     "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r672"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.",
        "label": "Entity Well-known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_Extension": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Extension number for local phone number.",
        "label": "Extension"
       }
      }
     },
     "localname": "Extension",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r665",
      "r667",
      "r668"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_LegalEntityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The set of legal entities associated with a report.",
        "label": "Legal Entity [Axis]"
       }
      }
     },
     "localname": "LegalEntityAxis",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsTables",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative",
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_NoTradingSymbolFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a security having no trading symbol.",
        "label": "No Trading Symbol Flag"
       }
      }
     },
     "localname": "NoTradingSymbolFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "trueItemType"
    },
    "dei_OtherReportingStandardItemNumber": {
     "auth_ref": [
      "r667"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "\"Item 17\" or \"Item 18\" specified when the basis of accounting is neither US GAAP nor IFRS.",
        "label": "Other Reporting Standard Item Number"
       }
      }
     },
     "localname": "OtherReportingStandardItemNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "otherReportingStandardItemNumberItemType"
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "auth_ref": [
      "r661"
     ],
     "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_PreCommencementTenderOffer": {
     "auth_ref": [
      "r662"
     ],
     "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r655"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_Security12gTitle": {
     "auth_ref": [
      "r659"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(g) registered security.",
        "label": "Title of 12(g) Security"
       }
      }
     },
     "localname": "Security12gTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r658"
     ],
     "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_SecurityReportingObligation": {
     "auth_ref": [
      "r663"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "15(d), indicating whether the security has a reporting obligation under that section of the Exchange Act.",
        "label": "Security Reporting Obligation"
       }
      }
     },
     "localname": "SecurityReportingObligation",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "securityReportingObligationItemType"
    },
    "dei_SolicitingMaterial": {
     "auth_ref": [
      "r664"
     ],
     "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "dei_WrittenCommunications": {
     "auth_ref": [
      "r673"
     ],
     "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/2021q4",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "srt_ConsolidatedEntitiesAxis": {
     "auth_ref": [
      "r137",
      "r275",
      "r279",
      "r284",
      "r460",
      "r461",
      "r468",
      "r469",
      "r528",
      "r650"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Entities [Axis]"
       }
      }
     },
     "localname": "ConsolidatedEntitiesAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidatedEntitiesDomain": {
     "auth_ref": [
      "r137",
      "r275",
      "r279",
      "r284",
      "r460",
      "r461",
      "r468",
      "r469",
      "r528",
      "r650"
     ],
     "localname": "ConsolidatedEntitiesDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis": {
     "auth_ref": [
      "r583"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Federal Home Loan Bank Branch [Axis]"
       }
      }
     },
     "localname": "FederalHomeLoanBankAdvancesBranchOfFHLBBankAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_FederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain": {
     "auth_ref": [],
     "localname": "FederalHomeLoanBankAdvancesBranchOfFHLBBankStateDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_FederalHomeLoanBankOfCincinnatiMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Federal Home Loan Bank of Cincinnati [Member]"
       }
      }
     },
     "localname": "FederalHomeLoanBankOfCincinnatiMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r219",
      "r350",
      "r353",
      "r615"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r289",
      "r322",
      "r368",
      "r369",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r541",
      "r612",
      "r616",
      "r651",
      "r652"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r289",
      "r322",
      "r368",
      "r369",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r541",
      "r612",
      "r616",
      "r651",
      "r652"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r219",
      "r350",
      "r353",
      "r615"
     ],
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_OwnershipAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ownership [Axis]"
       }
      }
     },
     "localname": "OwnershipAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_OwnershipDomain": {
     "auth_ref": [],
     "localname": "OwnershipDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ParentCompanyMember": {
     "auth_ref": [
      "r137"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Parent Company [Member]"
       }
      }
     },
     "localname": "ParentCompanyMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r215",
      "r350",
      "r351",
      "r545",
      "r611",
      "r613"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r215",
      "r350",
      "r351",
      "r545",
      "r611",
      "r613"
     ],
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r289",
      "r322",
      "r361",
      "r368",
      "r369",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r541",
      "r612",
      "r616",
      "r651",
      "r652"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r289",
      "r322",
      "r361",
      "r368",
      "r369",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r541",
      "r612",
      "r616",
      "r651",
      "r652"
     ],
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r216",
      "r217",
      "r350",
      "r352",
      "r614",
      "r641",
      "r642",
      "r643",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649"
     ],
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r216",
      "r217",
      "r350",
      "r352",
      "r614",
      "r633",
      "r641",
      "r642",
      "r643",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r221",
      "r526"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsAndNotesReceivableNet": {
     "auth_ref": [
      "r27",
      "r222",
      "r588"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of accounts and financing receivable. Includes, but is not limited to, notes and loan receivable.",
        "label": "Accounts and Financing Receivable, after Allowance for Credit Loss",
        "totalLabel": "Total accounts receivable"
       }
      }
     },
     "localname": "AccountsAndNotesReceivableNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r44",
      "r531"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": {
     "auth_ref": [
      "r242"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable.",
        "label": "SCHEDULE OF ACCOUNTS RECEIVABLE"
       }
      }
     },
     "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/AccountsReceivableTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsReceivableGross": {
     "auth_ref": [
      "r222"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccountsAndNotesReceivableNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.",
        "label": "Accounts receivable"
       }
      }
     },
     "localname": "AccountsReceivableGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [
      "r636"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNet": {
     "auth_ref": [
      "r27",
      "r588",
      "r635"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.",
        "label": "Accounts Receivable, after Allowance for Credit Loss",
        "terseLabel": "Accounts receivable",
        "verboseLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "AccountsReceivableNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r8",
      "r27",
      "r222",
      "r223"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts receivable (Note 4)"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r49"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued liabilities"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r42",
      "r266"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Accumulated Depreciation",
        "verboseLabel": "Accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r30",
      "r66",
      "r67",
      "r68",
      "r594",
      "r621",
      "r624"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.",
        "label": "Other comprehensive loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r65",
      "r68",
      "r75",
      "r76",
      "r77",
      "r139",
      "r140",
      "r141",
      "r466",
      "r617",
      "r618",
      "r675"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AcquisitionCosts": {
     "auth_ref": [
      "r551",
      "r552"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The capitalized costs incurred during the period (excluded from amortization) to purchase, lease or otherwise acquire an unproved property, including costs of lease bonuses and options to purchase or lease properties, the portion of costs applicable to minerals when land including mineral rights is purchased in fee, brokers' fees, recording fees, legal costs, and other costs incurred in acquiring properties.",
        "label": "Acquisition"
       }
      }
     },
     "localname": "AcquisitionCosts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r28",
      "r399",
      "r531"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.",
        "label": "Capital in excess of par value"
       }
      }
     },
     "localname": "AdditionalPaidInCapital",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r370",
      "r372",
      "r401",
      "r402"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "Stock-based compensation"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income to net cash:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables": {
     "auth_ref": [
      "r224"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccountsAndNotesReceivableNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The valuation allowance as of the balance sheet date to reduce the gross amount of receivables to estimated net realizable value, which would be presented in parentheses on the face of the balance sheet.",
        "label": "Allowance for Doubtful Accounts, Premiums and Other Receivables",
        "negatedLabel": "Allowances for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r116",
      "r252",
      "r258"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.",
        "label": "Amortization"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r167"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "Anti-dilutive options"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AreaOfLand": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area of land held.",
        "label": "Area of land"
       }
      }
     },
     "localname": "AreaOfLand",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative"
     ],
     "xbrltype": "areaItemType"
    },
    "us-gaap_ArrangementsAndNonarrangementTransactionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations."
       }
      }
     },
     "localname": "ArrangementsAndNonarrangementTransactionsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AssetAcquisitionConsiderationTransferredContingentConsideration": {
     "auth_ref": [
      "r451",
      "r452",
      "r453"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of contingent consideration recognized as part of consideration transferred in asset acquisition.",
        "label": "Contigent consideration of additional payment"
       }
      }
     },
     "localname": "AssetAcquisitionConsiderationTransferredContingentConsideration",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r133",
      "r199",
      "r205",
      "r211",
      "r235",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r460",
      "r468",
      "r489",
      "r529",
      "r531",
      "r567",
      "r590"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets [Default Label]",
        "totalLabel": "Total Assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r10",
      "r12",
      "r60",
      "r133",
      "r235",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r460",
      "r468",
      "r489",
      "r529",
      "r531"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AutomobilesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Vehicles that are used primarily for transporting people.",
        "label": "Automobiles [Member]"
       }
      }
     },
     "localname": "AutomobilesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r373",
      "r394"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r448",
      "r449",
      "r450"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.",
        "label": "Purchase price"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings": {
     "auth_ref": [
      "r444"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of facility held for productive use including, but not limited to, office, production, storage and distribution facilities, acquired at the acquisition date.",
        "label": "Assets acquired:Building"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r444"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Assets acquired: Cash"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": {
     "auth_ref": [
      "r444"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable",
        "negatedLabel": "Liabilities assumed: Accounts payable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt": {
     "auth_ref": [
      "r444"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Long-term Debt",
        "negatedLabel": "Liabilities assumed: Long term debt"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": {
     "auth_ref": [
      "r444"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities",
        "negatedLabel": "Liabilities assumed: Deferred income tax liability"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand": {
     "auth_ref": [
      "r444"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of real estate acquired, at the acquisition date.",
        "label": "Assets acquired: Land"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r443",
      "r444"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount recognized as of the acquisition date for the identifiable assets acquired in excess of (less than) the aggregate liabilities assumed.",
        "label": "Total identifiable net assets:"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumptionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": {
     "auth_ref": [
      "r5",
      "r138",
      "r186"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the business description and basis of presentation concepts.  Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity.  Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "BASIS OF PRESENTATION"
       }
      }
     },
     "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CanadaRevenueAgencyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of the government of Canada.",
        "label": "Canada Revenue Agency [Member]"
       }
      }
     },
     "localname": "CanadaRevenueAgencyMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative",
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails",
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Cash": {
     "auth_ref": [
      "r38",
      "r531",
      "r627",
      "r628"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash"
       }
      }
     },
     "localname": "Cash",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r6",
      "r38",
      "r118"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "periodEndLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r15",
      "r121"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.",
        "label": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash resources are comprised of:"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r111",
      "r118",
      "r125"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations",
        "periodEndLabel": "Cash resources, ending",
        "periodStartLabel": "Cash resources, beginning"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r111",
      "r497"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Inflow (outflow) of cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r130",
      "r133",
      "r160",
      "r161",
      "r162",
      "r164",
      "r166",
      "r173",
      "r174",
      "r175",
      "r235",
      "r275",
      "r279",
      "r280",
      "r281",
      "r284",
      "r285",
      "r320",
      "r321",
      "r324",
      "r328",
      "r489",
      "r670"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock."
       }
      }
     },
     "localname": "ClassOfStockDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommitmentsAndContingenciesPolicyTextBlock": {
     "auth_ref": [
      "r273",
      "r637"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies.",
        "label": "Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonClassBMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Classification of common stock that has different rights than Common Class A, representing ownership interest in a corporation.",
        "label": "Common Class B [Member]"
       }
      }
     },
     "localname": "CommonClassBMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r139",
      "r140",
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r26"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common stock, par value"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r26"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common stock, shares authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r26"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.",
        "label": "Common stock, shares issued"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r26",
      "r334"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common stock, shares outstanding"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r26",
      "r531"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Capital stock (Note 17) Authorized: 50,000,000 common shares with a par value of $0.001 each; 1,000,000 preferred shares with a par value of $0.01 each Issued and outstanding: 12,355,246 (2020: 12,260,545) common shares"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommunicationsAndInformationTechnology": {
     "auth_ref": [
      "r93"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 14.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense in the period for communications and data processing expense.",
        "label": "Telecommunications"
       }
      }
     },
     "localname": "CommunicationsAndInformationTechnology",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationRelatedCostsPolicyTextBlock": {
     "auth_ref": [
      "r377"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for salaries, bonuses, incentive awards, postretirement and postemployment benefits granted to employees, including equity-based arrangements; discloses methodologies for measurement, and the bases for recognizing related assets and liabilities and recognizing and reporting compensation expense.",
        "label": "Stock-based Compensation"
       }
      }
     },
     "localname": "CompensationRelatedCostsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r70",
      "r72",
      "r73",
      "r84",
      "r579",
      "r602"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive income attributable to controlling interests"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r70",
      "r72",
      "r83",
      "r458",
      "r459",
      "r472",
      "r578",
      "r601"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income (loss) and other comprehensive income (loss), attributable to noncontrolling interests. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest",
        "negatedLabel": "Comprehensive income \u2013 non-controlling interest"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r70",
      "r72",
      "r82",
      "r457",
      "r472",
      "r577",
      "r600"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest",
        "totalLabel": "Total comprehensive income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomePolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for comprehensive income.",
        "label": "Other Comprehensive Income"
       }
      }
     },
     "localname": "ComprehensiveIncomePolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ComputerEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems.",
        "label": "Computer Equipment [Member]"
       }
      }
     },
     "localname": "ComputerEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ComputerSoftwareIntangibleAssetMember": {
     "auth_ref": [
      "r253",
      "r256",
      "r446"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Collection of computer programs and related data that provide instructions to a computer, for example, but not limited to, application program, control module or operating system, that perform one or more particular functions or tasks.",
        "label": "Computer Software, Intangible Asset [Member]"
       }
      }
     },
     "localname": "ComputerSoftwareIntangibleAssetMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r181",
      "r182",
      "r219",
      "r487",
      "r488",
      "r636"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r181",
      "r182",
      "r219",
      "r487",
      "r488",
      "r625",
      "r636"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r181",
      "r182",
      "r219",
      "r487",
      "r488",
      "r625",
      "r636"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r178",
      "r586"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Risk Management"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r181",
      "r182",
      "r219",
      "r487",
      "r488",
      "r636"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration."
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Consolidation, Less than Wholly Owned Subsidiary, Parent Ownership Interest, Effects of Changes, Net [Line Items]"
       }
      }
     },
     "localname": "ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable": {
     "auth_ref": [
      "r467",
      "r473"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summarization of information required and determined to be disclosed concerning the effects of any changes in a parent's ownership interest in a subsidiary on the equity attributable to the parent which may have occurred during the period. The changes represented by this element did not result in the deconsolidation of the subsidiary.",
        "label": "Consolidation, Less than Wholly Owned Subsidiary, Parent Ownership Interest, Effects of Changes, Net [Table]"
       }
      }
     },
     "localname": "ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConvertibleNotesPayable": {
     "auth_ref": [
      "r23",
      "r569",
      "r592",
      "r629"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Including the current and noncurrent portions, carrying value as of the balance sheet date of a written promise to pay a note, initially due after one year or beyond the operating cycle if longer, which can be exchanged for a specified amount of one or more securities (typically common stock), at the option of the issuer or the holder.",
        "label": "Convertible note payable"
       }
      }
     },
     "localname": "ConvertibleNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CorporateAndOtherMember": {
     "auth_ref": [
      "r187"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Component of an entity that provides financial and operational oversight and administrative support for other segments and other segments not separately reported due to size or nature of business activities. Excludes intersegment elimination and reconciling items.",
        "label": "Corporate and Other [Member]"
       }
      }
     },
     "localname": "CorporateAndOtherMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r91",
      "r545"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.",
        "label": "Cost of sales (Note 6, 7 &amp; 8)",
        "verboseLabel": "Cost of Goods and Services Sold"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r134",
      "r424",
      "r434"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current federal tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current tax, federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentForeignTaxExpenseBenefit": {
     "auth_ref": [
      "r134",
      "r424"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current tax, foreign"
       }
      }
     },
     "localname": "CurrentForeignTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r134",
      "r424",
      "r434",
      "r436"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      },
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_ProfitLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.",
        "label": "Current income tax expense",
        "negatedLabel": "Current income tax expense",
        "totalLabel": "Current tax, total"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails",
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r134",
      "r424",
      "r434"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current tax, state"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.",
        "label": "Customer Relationships [Member]"
       }
      }
     },
     "localname": "CustomerRelationshipsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtConversionConvertedInstrumentAmount1": {
     "auth_ref": [
      "r123",
      "r124"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The value of the financial instrument(s) that the original debt is being converted into in a noncash (or part noncash) transaction. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Debt converted to shares, amount"
       }
      }
     },
     "localname": "DebtConversionConvertedInstrumentAmount1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear": {
     "auth_ref": [
      "r123",
      "r124"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expiration, mandatory redemption, or due date, in YYYY-MM-DD format, of the financial instrument issued in exchange for the original debt being converted in a noncash or part noncash transaction.",
        "label": "Debt convertible due date"
       }
      }
     },
     "localname": "DebtConversionConvertedInstrumentExpirationOrDueDateDayMonthAndYear",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative"
     ],
     "xbrltype": "dateItemType"
    },
    "us-gaap_DebtConversionConvertedInstrumentExpirationOrDueDateYear": {
     "auth_ref": [
      "r123",
      "r124"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Year of expiration or mandatory redemption of the financial instrument issued in exchange for the original debt being converted in a noncash or part noncash transaction, in YYYY format.",
        "label": "Debt conversion due date"
       }
      }
     },
     "localname": "DebtConversionConvertedInstrumentExpirationOrDueDateYear",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "gYearListItemType"
    },
    "us-gaap_DebtConversionConvertedInstrumentRate": {
     "auth_ref": [
      "r123",
      "r124"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Dividend or interest rate associated with the financial instrument issued in exchange for the original debt being converted in a noncash or part noncash transaction. Noncash are transactions that affect recognized assets or liabilities but that do not result in cash receipts or cash payments. Part noncash refers to that portion of the transaction not resulting in cash receipts or cash payments.",
        "label": "Debt conversion ratio"
       }
      }
     },
     "localname": "DebtConversionConvertedInstrumentRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtConversionConvertedInstrumentSharesIssued1": {
     "auth_ref": [
      "r123",
      "r124"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares issued in exchange for the original debt being converted in a noncash (or part noncash) transaction. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or payments in the period.",
        "label": "Debt converted to shares"
       }
      }
     },
     "localname": "DebtConversionConvertedInstrumentSharesIssued1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_DebtDefaultLongtermDebtAmount": {
     "auth_ref": [
      "r129"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of outstanding long-term debt or borrowing associated with any securities or credit agreement for which there has been a default in principal, interest, sinking fund, or redemption provisions, or any breach of covenant that existed at the end of the period and subsequently has not been cured.",
        "label": "Debt balance owing"
       }
      }
     },
     "localname": "DebtDefaultLongtermDebtAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r129",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r303",
      "r310",
      "r311",
      "r312",
      "r319"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.",
        "label": "CONVERTIBLE NOTE PAYABLE"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayable"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r20",
      "r22",
      "r23",
      "r132",
      "r137",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r293",
      "r299",
      "r300",
      "r301",
      "r302",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r315",
      "r316",
      "r317",
      "r318",
      "r510",
      "r568",
      "r569",
      "r587"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.",
        "label": "Debt Instrument [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtTables",
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r286",
      "r315",
      "r316",
      "r508",
      "r510",
      "r511"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "Promissory note"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentIncreaseAccruedInterest": {
     "auth_ref": [
      "r132"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase for accrued, but unpaid interest on the debt instrument for the period.",
        "label": "Accrued interest"
       }
      }
     },
     "localname": "DebtInstrumentIncreaseAccruedInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r51",
      "r287"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt instrument interest rate",
        "verboseLabel": "Debt instrument, interest rate, stated percentage"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r52",
      "r132",
      "r137",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r293",
      "r299",
      "r300",
      "r301",
      "r302",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r315",
      "r316",
      "r317",
      "r318",
      "r510"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities."
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtTables",
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentPeriodicPayment": {
     "auth_ref": [
      "r52",
      "r584"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the required periodic payments including both interest and principal payments.",
        "label": "Debt instrument periodic payment"
       }
      }
     },
     "localname": "DebtInstrumentPeriodicPayment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Debt Instrument, Term",
        "verboseLabel": "Debt instrument, term"
       }
      }
     },
     "localname": "DebtInstrumentTerm",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits [Line Items]"
       }
      }
     },
     "localname": "DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r134",
      "r425",
      "r434"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred federal income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred income tax, federal"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r134",
      "r425",
      "r434"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred income tax, foreign"
       }
      }
     },
     "localname": "DeferredForeignIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r408",
      "r409"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 9.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.",
        "label": "Deferred tax asset (Note 14)"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r116",
      "r134",
      "r425",
      "r434",
      "r435",
      "r436"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      },
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ProfitLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred income tax expense (recovery)",
        "negatedLabel": "Deferred income tax expense",
        "totalLabel": "Deferred income tax, total",
        "verboseLabel": "Deferred tax expense (recovery)"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails",
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r408",
      "r409"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.",
        "label": "Deferred income tax liability (Note 14)"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income taxes (Note 14)"
       }
      }
     },
     "localname": "DeferredIncomeTaxesAndTaxCreditsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredRevenueCurrent": {
     "auth_ref": [
      "r34"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Deferred revenue"
       }
      }
     },
     "localname": "DeferredRevenueCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r134",
      "r425",
      "r434"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred state and local tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred income tax, state"
       }
      }
     },
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsDerivativeInstruments": {
     "auth_ref": [
      "r422",
      "r423"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from derivative instruments.",
        "label": "Financial instruments"
       }
      }
     },
     "localname": "DeferredTaxAssetsDerivativeInstruments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from intangible assets including goodwill.",
        "label": "Intangible assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsGoodwillAndIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsInvestments": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from investments (excludes investments in subsidiaries and equity method investments).",
        "label": "Deferred Tax Assets, Investments",
        "negatedLabel": "Investments"
       }
      }
     },
     "localname": "DeferredTaxAssetsInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "auth_ref": [
      "r422",
      "r423"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.",
        "label": "Non capital loss carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r416"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.",
        "label": "Deferred Tax Assets, Valuation Allowance",
        "negatedLabel": "Valuation Allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanDisclosureLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Defined Benefit Plan Disclosure [Line Items]"
       }
      }
     },
     "localname": "DefinedBenefitPlanDisclosureLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DepositsAssetsCurrent": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value of amounts transferred to third parties for security purposes that are expected to be returned or applied towards payment within one year or during the operating cycle, if shorter.",
        "label": "Term deposits"
       }
      }
     },
     "localname": "DepositsAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepositsAssetsNoncurrent": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value of amounts transferred to third parties for security purposes that are expected to be returned or applied towards payment after one year or beyond the operating cycle, if longer.",
        "label": "Long term deposits (Note 9)",
        "verboseLabel": "Long term deposits"
       }
      }
     },
     "localname": "DepositsAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r116",
      "r264"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.",
        "label": "Depreciation"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r116",
      "r264"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.",
        "label": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationNonproduction": {
     "auth_ref": [
      "r116",
      "r264"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The expense recognized in the current period that allocates the cost of nonproduction tangible assets over their useful lives.",
        "label": "Depreciation, Nonproduction",
        "verboseLabel": "Depreciation"
       }
      }
     },
     "localname": "DepreciationNonproduction",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeContractTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset."
       }
      }
     },
     "localname": "DerivativeContractTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "auth_ref": [
      "r63",
      "r475",
      "r476",
      "r477",
      "r478"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of derivative contract.",
        "label": "Derivative Instrument [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentRiskAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DevelopedTechnologyRightsMember": {
     "auth_ref": [
      "r447"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property.",
        "label": "Developed Technology Rights [Member]"
       }
      }
     },
     "localname": "DevelopedTechnologyRightsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r403"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "STOCK OPTIONS"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Payment Arrangement [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasicAndDiluted": {
     "auth_ref": [
      "r165"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income or loss for the period per each share in instances when basic and diluted earnings per share are the same amount and reported as a single line item on the face of the financial statements.  Basic earnings per share is the amount of net income or loss for the period per each share of common stock or unit outstanding during the reporting period.  Diluted earnings per share includes the amount of net income or loss for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.",
        "label": "Income per share (basic and diluted) (Note 15)",
        "verboseLabel": "Basic and diluted"
       }
      }
     },
     "localname": "EarningsPerShareBasicAndDiluted",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r167",
      "r168"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.",
        "label": "Income Per Share"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r167",
      "r168",
      "r169",
      "r170"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "INCOME PER SHARE"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r497"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Effect of exchange rate changes on cash"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r135",
      "r411",
      "r437"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).",
        "label": "US statutory tax rates"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r393"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Compensation expense related to non-vested awards"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r393"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Compensation expense related to non-vested awards, weighted average period"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Revenue from External Customer [Line Items]"
       }
      }
     },
     "localname": "EntityWideInformationRevenueFromExternalCustomerLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EntityWideRevenueMajorCustomerLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Revenue, Major Customer [Line Items]"
       }
      }
     },
     "localname": "EntityWideRevenueMajorCustomerLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services.",
        "label": "Equipment [Member]"
       }
      }
     },
     "localname": "EquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r0",
      "r75",
      "r76",
      "r77",
      "r139",
      "r140",
      "r141",
      "r145",
      "r152",
      "r154",
      "r172",
      "r238",
      "r334",
      "r339",
      "r395",
      "r396",
      "r397",
      "r427",
      "r428",
      "r480",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r617",
      "r618",
      "r619",
      "r675"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc."
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A description of the principal activities of an investee accounted for under the equity method.",
        "label": "Equity Method Investment, Description of Principal Activities"
       }
      }
     },
     "localname": "EquityMethodInvestmentDescriptionOfPrincipalActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "auth_ref": [
      "r233"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.",
        "label": "Ownership interest",
        "terseLabel": "Equity Method Investment, Ownership Percentage",
        "verboseLabel": "Ownership interest percentage"
       }
      }
     },
     "localname": "EquityMethodInvestmentOwnershipPercentage",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal": {
     "auth_ref": [
      "r87",
      "r88",
      "r116"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of an equity method investment.",
        "label": "Gain in equity method investment"
       }
      }
     },
     "localname": "EquityMethodInvestmentRealizedGainLossOnDisposal",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestments": {
     "auth_ref": [
      "r39",
      "r200",
      "r232"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This item represents the carrying amount on the entity's balance sheet of its investment in common stock of an equity method investee. This is not an indicator of the fair value of the investment, rather it is the initial cost adjusted for the entity's share of earnings and losses of the investee, adjusted for any distributions (dividends) and other than temporary impairment (OTTI) losses recognized.",
        "label": "Investments (Note 10)",
        "periodEndLabel": "Balance, Ending",
        "periodStartLabel": "Balance, Beginning"
       }
      }
     },
     "localname": "EquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Method Investments and Joint Ventures [Abstract]"
       }
      }
     },
     "localname": "EquityMethodInvestmentsAndJointVenturesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityMethodInvestmentsDisclosureTextBlock": {
     "auth_ref": [
      "r237"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for equity method investments and joint ventures. Equity method investments are investments that give the investor the ability to exercise significant influence over the operating and financial policies of an investee. Joint ventures are entities owned and operated by a small group of businesses as a separate and specific business or project for the mutual benefit of the members of the group.",
        "label": "INVESTMENTS"
       }
      }
     },
     "localname": "EquityMethodInvestmentsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Investments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EquityMethodInvestmentsPolicy": {
     "auth_ref": [
      "r39",
      "r110",
      "r234",
      "r489"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for equity method of accounting for investments and other interests. Investment includes, but is not limited to, unconsolidated subsidiary, corporate joint venture, noncontrolling interest in real estate venture, limited partnership, and limited liability company. Information includes, but is not limited to, ownership percentage, reason equity method is or is not considered appropriate, and accounting policy election for distribution received.",
        "label": "Equity Method Investment"
       }
      }
     },
     "localname": "EquityMethodInvestmentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EquityMethodInvestmentsTextBlock": {
     "auth_ref": [
      "r236"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of equity method investments including, but not limited to, name of each investee or group of investments, percentage ownership, difference between recorded amount of an investment and the value of the underlying equity in the net assets, and summarized financial information.",
        "label": "SCHEDULE OF EQUITY METHOD INVESTMENT"
       }
      }
     },
     "localname": "EquityMethodInvestmentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": {
     "auth_ref": [
      "r483"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Class of asset."
       }
      }
     },
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueByAssetClassAxis": {
     "auth_ref": [
      "r482",
      "r484"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by class of asset.",
        "label": "Asset Class [Axis]"
       }
      }
     },
     "localname": "FairValueByAssetClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r485",
      "r486"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAmortization": {
     "auth_ref": [
      "r514",
      "r518",
      "r521"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease.",
        "label": "Lease right of use amortization"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinancingReceivablesTextBlock": {
     "auth_ref": [
      "r227",
      "r230"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for financing receivable.",
        "label": "ACCOUNTS RECEIVABLE"
       }
      }
     },
     "localname": "FinancingReceivablesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/AccountsReceivable"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Estimated useful life"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r257"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Accumulated Amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPatentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r259"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One",
        "verboseLabel": "2022"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedAmortizationExpenseDetails",
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r259"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2026"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r259"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four",
        "verboseLabel": "2025"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r259"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three",
        "verboseLabel": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r259"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two",
        "verboseLabel": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r253",
      "r254",
      "r257",
      "r261",
      "r546",
      "r550"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r253",
      "r256"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company."
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Assets, excluding financial assets, that lack physical substance, having a limited useful life.",
        "label": "Finite-Lived Intangible Assets [Member]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r257",
      "r546"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Patents, Net",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPatentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedPatentsGross": {
     "auth_ref": [
      "r257"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross carrying amount before accumulated amortization as of the balance sheet date of the costs pertaining to the exclusive legal rights granted to the owner of the patent to exploit an invention or a process for a period of time specified by law. Such costs may have been expended to directly apply and receive patent rights, or to acquire such rights.",
        "label": "Patents, Cost"
       }
      }
     },
     "localname": "FiniteLivedPatentsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPatentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": {
     "auth_ref": [
      "r493",
      "r494",
      "r495",
      "r496"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 15.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.",
        "label": "Foreign Currency Transaction Gain (Loss), before Tax",
        "negatedLabel": "Currency exchange"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionGainLossBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "auth_ref": [
      "r505"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.",
        "label": "Foreign Currency"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.",
        "label": "Furniture and Fixtures [Member]"
       }
      }
     },
     "localname": "FurnitureAndFixturesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainLossOnInvestments": {
     "auth_ref": [
      "r96",
      "r116",
      "r231"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 5.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of realized and unrealized gain (loss) on investment.",
        "label": "Gain on investments (Note 10)"
       }
      }
     },
     "localname": "GainLossOnInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainLossOnInvestmentsTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of realized and unrealized gain (loss) on investment in security.",
        "label": "SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT"
       }
      }
     },
     "localname": "GainLossOnInvestmentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "auth_ref": [
      "r116"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.",
        "label": "Gain on sale of equipment (Note 6)",
        "negatedLabel": "Gain on sale of equipment",
        "verboseLabel": "Gain on disposal"
       }
      }
     },
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainsLossesOnSalesOfInvestmentRealEstate": {
     "auth_ref": [
      "r87",
      "r88",
      "r116",
      "r574",
      "r603",
      "r608",
      "r609",
      "r610"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net gain (loss) resulting from sales and other disposals of real estate owned for investment purposes.",
        "label": "Net sales"
       }
      }
     },
     "localname": "GainsLossesOnSalesOfInvestmentRealEstate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralInsuranceExpense": {
     "auth_ref": [
      "r93"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The expense in the period incurred with respect to protection provided by insurance entities against risks other than risks associated with production (which are allocated to cost of sales).",
        "label": "Insurance"
       }
      }
     },
     "localname": "GeneralInsuranceExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r248",
      "r249",
      "r531",
      "r566"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 8.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill (Note 8)",
        "verboseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r262"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for goodwill and intangible assets.",
        "label": "GOODWILL AND INTANGIBLE ASSETS"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy": {
     "auth_ref": [
      "r260"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for indefinite-lived intangible assets (that is, those intangible assets not subject to amortization). This accounting policy also may address how the entity assesses whether events and circumstances continue to support an indefinite useful life and how the entity assesses and measures impairment of such assets.",
        "label": "Goodwill and intangible assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsIntangibleAssetsIndefiniteLivedPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r90",
      "r133",
      "r199",
      "r204",
      "r207",
      "r210",
      "r213",
      "r235",
      "r275",
      "r276",
      "r277",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r489"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross Profit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Impairment Effects on Earnings Per Share [Line Items]"
       }
      }
     },
     "localname": "ImpairmentEffectsOnEarningsPerShareLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ImpairmentEffectsOnEarningsPerShareTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about the effects of asset impairment charge on per share or per unit basis.",
        "label": "Impairment Effects on Earnings Per Share [Table]"
       }
      }
     },
     "localname": "ImpairmentEffectsOnEarningsPerShareTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r263",
      "r269"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.",
        "label": "Impairment of Long-Lived Assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r80",
      "r199",
      "r204",
      "r207",
      "r210",
      "r213",
      "r565",
      "r575",
      "r581",
      "r604"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ProfitLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "Income before tax",
        "totalLabel": "Income before income tax"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityNameAxis": {
     "auth_ref": [
      "r413"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of taxing authority.",
        "label": "Income Tax Authority, Name [Axis]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative",
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails",
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityNameDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes."
       }
      }
     },
     "localname": "IncomeTaxAuthorityNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative",
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails",
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r135",
      "r412",
      "r414",
      "r419",
      "r432",
      "r438",
      "r440",
      "r441",
      "r442"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.",
        "label": "INCOME TAXES"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r136",
      "r153",
      "r154",
      "r197",
      "r410",
      "r433",
      "r439",
      "r605"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Total income tax expense",
        "totalLabel": "Total",
        "verboseLabel": "Current and deferred income tax expense"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails",
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r74",
      "r406",
      "r407",
      "r414",
      "r415",
      "r418",
      "r426"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.",
        "label": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r411"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in the valuation allowance for deferred tax assets.",
        "label": "Change in valuation allowance"
       }
      }
     },
     "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate": {
     "auth_ref": [
      "r405",
      "r411"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations, attributable to increase (decrease) in the income tax rates.",
        "label": "Change in enacted tax rate"
       }
      }
     },
     "localname": "IncomeTaxReconciliationChangeInEnactedTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": {
     "auth_ref": [
      "r411"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit).",
        "label": "Foreign tax rate difference"
       }
      }
     },
     "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpense": {
     "auth_ref": [
      "r411"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to nondeductible expenses.",
        "label": "Non-deductible items"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r411"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.",
        "label": "Change in estimates and other"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r122"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.",
        "label": "Income taxes paid"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r115"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.",
        "label": "Increase in accounts payable and accrued liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r115"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Increase in accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": {
     "auth_ref": [
      "r115"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.",
        "label": "Increase in taxes payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "auth_ref": [
      "r115",
      "r542"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 17.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Increase in deferred revenue"
       }
      }
     },
     "localname": "IncreaseDecreaseInContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r115"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "Increase (Decrease) in Inventories",
        "negatedLabel": "(Increase) decrease in inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in non-cash working capital items:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "auth_ref": [
      "r115"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.",
        "label": "Increase (Decrease) in Prepaid Expense",
        "negatedLabel": "Increase in prepaid expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": {
     "auth_ref": [
      "r260"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.",
        "label": "Indefinite Lived Intangible Asset"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r262"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all or part of the information related to intangible assets.",
        "label": "PATENTS"
       }
      }
     },
     "localname": "IntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Patents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r251",
      "r255"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.",
        "label": "Intangible assets (Note 8)"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r78",
      "r193",
      "r506",
      "r509",
      "r580"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "Interest Expense",
        "verboseLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpenseDebt": {
     "auth_ref": [
      "r97",
      "r307",
      "r314",
      "r317",
      "r318"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense for debt.",
        "label": "Interest Expense, Debt",
        "verboseLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpenseDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r108",
      "r113",
      "r122"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.",
        "label": "Interest paid"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InternalRevenueServiceIRSMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of the United States of America government entitled to levy and collect income taxes from the entity.",
        "label": "Internal Revenue Service (IRS) [Member]"
       }
      }
     },
     "localname": "InternalRevenueServiceIRSMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r245"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.",
        "label": "INVENTORIES"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoods": {
     "auth_ref": [
      "r55"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.",
        "label": "Completed goods"
       }
      }
     },
     "localname": "InventoryFinishedGoods",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r7",
      "r58",
      "r531"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventories (Note 5)",
        "totalLabel": "Total inventory"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r14",
      "r59",
      "r127",
      "r171",
      "r243",
      "r244",
      "r245",
      "r543"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.",
        "label": "Inventories and Cost of Sales"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterialsAndSupplies": {
     "auth_ref": [
      "r57"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross amount of unprocessed materials to be used in manufacturing or production process and supplies that will be consumed.",
        "label": "Raw materials and supplies"
       }
      }
     },
     "localname": "InventoryRawMaterialsAndSupplies",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcess": {
     "auth_ref": [
      "r56"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.",
        "label": "Work in progress"
       }
      }
     },
     "localname": "InventoryWorkInProcess",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease": {
     "auth_ref": [
      "r626",
      "r631"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in net assets from operations of investment company.",
        "label": "Investment"
       }
      }
     },
     "localname": "InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentIncomeInterest": {
     "auth_ref": [
      "r95",
      "r192"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 7.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.",
        "label": "Interest income"
       }
      }
     },
     "localname": "InvestmentIncomeInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandMember": {
     "auth_ref": [
      "r351"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Part of earth's surface not covered by water.",
        "label": "Land [Member]"
       }
      }
     },
     "localname": "LandMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r265"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements [Member]"
       }
      }
     },
     "localname": "LeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LesseeOperatingLeaseDiscountRate": {
     "auth_ref": [
      "r517"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discount rate used by lessee to determine present value of operating lease payments.",
        "label": "Operating leases discount rate"
       }
      }
     },
     "localname": "LesseeOperatingLeaseDiscountRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LeasesDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r520"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "SCHEDULE OF UNDISCOUNTED RENT PAYMENTS"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r520"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r520"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2022"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r520"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r520"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r520"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r520"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedLabel": "Impact of discounting"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r522"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.",
        "label": "LEASES"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r48",
      "r133",
      "r206",
      "r235",
      "r275",
      "r276",
      "r277",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r461",
      "r468",
      "r469",
      "r489",
      "r529",
      "r530"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.",
        "label": "Liabilities [Default Label]",
        "totalLabel": "Total Liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities"
       }
      }
     },
     "localname": "LiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r33",
      "r133",
      "r235",
      "r489",
      "r531",
      "r571",
      "r597"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Liabilities and Equity",
        "totalLabel": "Total Liabilities and Stockholders\u2019 Equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r50",
      "r133",
      "r235",
      "r275",
      "r276",
      "r277",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r461",
      "r468",
      "r469",
      "r489",
      "r529",
      "r530",
      "r531"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Current"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCredit": {
     "auth_ref": [
      "r23",
      "r569",
      "r587"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.",
        "label": "Revolving line of credit"
       }
      }
     },
     "localname": "LineOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityAxis": {
     "auth_ref": [
      "r45",
      "r132"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit.",
        "label": "Lender Name [Axis]"
       }
      }
     },
     "localname": "LineOfCreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd": {
     "auth_ref": [
      "r45"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The effective interest rate at the end of the reporting period.",
        "label": "Annual interest rate of loan"
       }
      }
     },
     "localname": "LineOfCreditFacilityInterestRateAtPeriodEnd",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LineOfCreditFacilityInterestRateDuringPeriod": {
     "auth_ref": [
      "r45"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The effective interest rate during the reporting period.",
        "label": "Debt effective rate"
       }
      }
     },
     "localname": "LineOfCreditFacilityInterestRateDuringPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LineOfCreditFacilityLenderDomain": {
     "auth_ref": [
      "r45",
      "r132"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility."
       }
      }
     },
     "localname": "LineOfCreditFacilityLenderDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LineOfCreditFacilityLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Line of Credit Facility [Line Items]"
       }
      }
     },
     "localname": "LineOfCreditFacilityLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r45"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.",
        "label": "Aggregate amount of revolving line of credit"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "auth_ref": [
      "r45",
      "r132"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line.",
        "label": "Line of Credit Facility [Table]"
       }
      }
     },
     "localname": "LineOfCreditFacilityTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LinesOfCreditCurrent": {
     "auth_ref": [
      "r20",
      "r568"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.",
        "label": "Short term line of credit (Note 11)",
        "verboseLabel": "Line of Credit"
       }
      }
     },
     "localname": "LinesOfCreditCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r23",
      "r300",
      "r313",
      "r315",
      "r316",
      "r569",
      "r593"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt",
        "periodEndLabel": "Balance, December 31",
        "periodStartLabel": "Balance, January 1"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Current portion of long term debt (Note 12)",
        "negatedLabel": "Less: current portion"
       }
      }
     },
     "localname": "LongTermDebtCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "auth_ref": [
      "r137",
      "r274",
      "r305"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year One",
        "verboseLabel": "2022"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "auth_ref": [
      "r137",
      "r274",
      "r305"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year Four",
        "verboseLabel": "2025"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "auth_ref": [
      "r137",
      "r274",
      "r305"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year Three",
        "verboseLabel": "2025"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "auth_ref": [
      "r137",
      "r274",
      "r305"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year Two",
        "verboseLabel": "2023"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long term debt (Note 12)",
        "verboseLabel": "Long term balance"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtTextBlock": {
     "auth_ref": [
      "r319"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-term debt.",
        "label": "LONG TERM DEBT"
       }
      }
     },
     "localname": "LongTermDebtTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_MachineryAndEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.",
        "label": "Machinery and Equipment [Member]"
       }
      }
     },
     "localname": "MachineryAndEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MinorityInterest": {
     "auth_ref": [
      "r54",
      "r133",
      "r235",
      "r275",
      "r279",
      "r280",
      "r281",
      "r284",
      "r285",
      "r489",
      "r570",
      "r596"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which is directly or indirectly attributable to that ownership interest in subsidiary equity which is not attributable to the parent (that is, noncontrolling interest, previously referred to as minority interest).",
        "label": "Non-controlling interests (Note 18)",
        "periodEndLabel": "Distribution to noncontrolling interests, Ending balance",
        "periodStartLabel": "Distribution to noncontrolling interests, Beginning balance"
       }
      }
     },
     "localname": "MinorityInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders": {
     "auth_ref": [
      "r339"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Decrease in noncontrolling interest balance from payment of dividends or other distributions by the non-wholly owned subsidiary or partially owned entity, included in the consolidation of the parent entity, to the noncontrolling interest holders.",
        "label": "Noncontrolling Interest, Decrease from Distributions to Noncontrolling Interest Holders",
        "negatedLabel": "Distributions to noncontrolling interests",
        "negatedTerseLabel": "Distribution"
       }
      }
     },
     "localname": "MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MinorityInterestDisclosureTextBlock": {
     "auth_ref": [
      "r474"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for noncontrolling interest in consolidated subsidiaries, which could include the name of the subsidiary, the ownership percentage held by the parent, the ownership percentage held by the noncontrolling owners, the amount of the noncontrolling interest, the location of this amount on the balance sheet (when not reported separately), an explanation of the increase or decrease in the amount of the noncontrolling interest, the noncontrolling interest share of the net Income or Loss of the subsidiary, the location of this amount on the income statement (when not reported separately), the nature of the noncontrolling interest such as background information and terms, the amount of the noncontrolling interest represented by preferred stock, a description of the preferred stock, and the dividend requirements of the preferred stock.",
        "label": "NON-CONTROLLING INTERESTS"
       }
      }
     },
     "localname": "MinorityInterestDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterests"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The equity interest of noncontrolling shareholders, partners or other equity holders in consolidated entity.",
        "label": "Non-controlling interests"
       }
      }
     },
     "localname": "MinorityInterestOwnershipPercentageByNoncontrollingOwners",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_MinorityInterestOwnershipPercentageByParent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The parent entity's interest in net assets of the subsidiary, expressed as a percentage.",
        "label": "Related party owner ship percentage"
       }
      }
     },
     "localname": "MinorityInterestOwnershipPercentageByParent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r111"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Cash used in financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r111"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r111",
      "r114",
      "r117"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r4",
      "r69",
      "r71",
      "r77",
      "r81",
      "r117",
      "r133",
      "r144",
      "r148",
      "r149",
      "r150",
      "r151",
      "r153",
      "r154",
      "r163",
      "r199",
      "r204",
      "r207",
      "r210",
      "r213",
      "r235",
      "r275",
      "r276",
      "r277",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r481",
      "r489",
      "r576",
      "r599"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net income attributable to controlling interest"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r69",
      "r71",
      "r77",
      "r153",
      "r154",
      "r463",
      "r471"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of Net Income (Loss) attributable to noncontrolling interest.",
        "label": "Non-controlling interest share of income",
        "negatedLabel": "Net income attributable to non-controlling interests"
       }
      }
     },
     "localname": "NetIncomeLossAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r2",
      "r142",
      "r143",
      "r146",
      "r147",
      "r155",
      "r156",
      "r157",
      "r228",
      "r229",
      "r239",
      "r240",
      "r354",
      "r355",
      "r356",
      "r357",
      "r398",
      "r429",
      "r430",
      "r431",
      "r479",
      "r490",
      "r491",
      "r492",
      "r523",
      "r547",
      "r548",
      "r549",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624",
      "r676"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.",
        "label": "Recent Accounting Pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncontrollingInterestAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncontrolling Interest [Abstract]"
       }
      }
     },
     "localname": "NoncontrollingInterestAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_NoncontrollingInterestMember": {
     "auth_ref": [
      "r139",
      "r140",
      "r141",
      "r339",
      "r455"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest.",
        "label": "Noncontrolling Interest [Member]"
       }
      }
     },
     "localname": "NoncontrollingInterestMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NoncurrentAssets": {
     "auth_ref": [
      "r217"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets.",
        "label": "Long-lived assets"
       }
      }
     },
     "localname": "NoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OfficeEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used in an office setting. Examples include, but are not limited to, computers, copiers and fax machine.",
        "label": "Office Equipment [Member]"
       }
      }
     },
     "localname": "OfficeEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OfficersCompensation": {
     "auth_ref": [
      "r85"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for salary and wage arising from service rendered by officer. Excludes allocated cost, labor-related nonsalary expense, and direct and overhead labor cost included in cost of good and service sold.",
        "label": "Administrative salaries and benefits"
       }
      }
     },
     "localname": "OfficersCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OffsettingAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Offsetting Assets [Line Items]"
       }
      }
     },
     "localname": "OffsettingAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OffsettingAssetsTable": {
     "auth_ref": [
      "r61",
      "r62"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about derivative and financial assets that are subject to offsetting, including enforceable master netting arrangements.",
        "label": "Offsetting Assets [Table]"
       }
      }
     },
     "localname": "OffsettingAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.",
        "label": "Operating Expenses [Default Label]",
        "totalLabel": "Total operating expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Expenses"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r199",
      "r204",
      "r207",
      "r210",
      "r213"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating Income (Loss)",
        "totalLabel": "Operating income"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r515"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating lease expense. Excludes sublease income.",
        "label": "Lease expense"
       }
      }
     },
     "localname": "OperatingLeaseExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r513"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Total",
        "periodEndLabel": "Lease Liability Ending Balance",
        "periodStartLabel": "Lease Liability Ending Balance",
        "verboseLabel": "Lease liability, December 31, 2021"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails",
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r513"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Current portion of lease liability (Note 3)",
        "verboseLabel": "Short-term portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r513"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Lease liability (Note 3)",
        "verboseLabel": "Long-term portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r516",
      "r519"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "negatedLabel": "Payments"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r512"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Right of use assets (Note 3)",
        "periodEndLabel": "Right of Use Assets Ending Balance",
        "periodStartLabel": "Right of Use Assets Ending Balance"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": {
     "auth_ref": [
      "r116"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense for right-of-use asset from operating lease.",
        "label": "Operating Lease, Right-of-Use Asset, Amortization Expense",
        "negatedLabel": "Depreciation"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r420"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "Operating loss carryforwards",
        "verboseLabel": "Total"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwardsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Operating Loss Carryforwards [Line Items]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative",
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLossCarryforwardsTable": {
     "auth_ref": [
      "r421"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization.",
        "label": "Operating Loss Carryforwards [Table]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative",
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r457",
      "r458",
      "r465"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.",
        "label": "Translation adjustment"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r64"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.",
        "label": "Unrealized gain on foreign currency transactions"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other comprehensive income:"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherGeneralExpense": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 7.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of general expenses not normally included in Other Operating Costs and Expenses.",
        "label": "Office and miscellaneous"
       }
      }
     },
     "localname": "OtherGeneralExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ParentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Portion of equity, or net assets, in the consolidated entity attributable, directly or indirectly, to the parent. Excludes noncontrolling interests.",
        "label": "Parent [Member]"
       }
      }
     },
     "localname": "ParentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PatentsMember": {
     "auth_ref": [
      "r447"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exclusive legal right granted by the government to the owner of the patent to exploit an invention or a process for a period of time specified by law.",
        "label": "Patents [Member]"
       }
      }
     },
     "localname": "PatentsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PaymentsForProceedsFromDepositOnLoan": {
     "auth_ref": [
      "r119",
      "r120"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net cash inflow or outflow from resulting from payment, receipt or drawdown of cash deposit to guarantee a loan during the period.",
        "label": "Payments for (Proceeds from) Deposit on Loan",
        "negatedLabel": "Less: Payments on loan"
       }
      }
     },
     "localname": "PaymentsForProceedsFromDepositOnLoan",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfFinancingCosts": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for loan and debt issuance costs.",
        "label": "Payments of Financing Costs",
        "negatedLabel": "Lease payments"
       }
      }
     },
     "localname": "PaymentsOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r100"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.",
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "negatedLabel": "Acquisition of ENP Realty LLC"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireInvestments": {
     "auth_ref": [
      "r102"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the purchase of all investments (debt, security, other) during the period.",
        "label": "Payments to Acquire Investments",
        "negatedLabel": "Purchase of investments"
       }
      }
     },
     "localname": "PaymentsToAcquireInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r101"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "Expenditures for segment assets",
        "negatedLabel": "Purchase of property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToMinorityShareholders": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow to a noncontrolling interest. Includes, but not limited to, reduction of noncontrolling interest ownership. Excludes dividends paid to the noncontrolling interest.",
        "label": "Partnership distribution to non-controlling interest",
        "negatedLabel": "Distribution to non-controlling interest"
       }
      }
     },
     "localname": "PaymentsToMinorityShareholders",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r25",
      "r320"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred stock, par value"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r25"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.",
        "label": "Preferred stock, shares authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r25",
      "r320"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.",
        "label": "Preferred stock, shares issued"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r25"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.",
        "label": "Preferred stock, shares outstanding"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy": {
     "auth_ref": [
      "r225",
      "r607"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the estimated allowance for doubtful accounts for premium amounts due from policyholders, insureds, and other insurance entities. May include factors that management considered, such as historical loss experience and current economic and competitive conditions.",
        "label": "Allowance for Doubtful Accounts"
       }
      }
     },
     "localname": "PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "auth_ref": [
      "r9",
      "r11",
      "r246",
      "r247"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.",
        "label": "Prepaid expenses"
       }
      }
     },
     "localname": "PrepaidExpenseCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrimeRateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.",
        "label": "Prime Rate [Member]"
       }
      }
     },
     "localname": "PrimeRateMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProceedsFromContributionsFromAffiliates": {
     "auth_ref": [
      "r105"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from an entity that is affiliated with the entity by means of direct or indirect ownership.",
        "label": "Proceeds from investment"
       }
      }
     },
     "localname": "ProceedsFromContributionsFromAffiliates",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "auth_ref": [
      "r103"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the additional capital contribution to the entity.",
        "label": "Sale of common stock"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfLongTermDebt": {
     "auth_ref": [
      "r104"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.",
        "label": "Proceeds of long term debt"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromLoans": {
     "auth_ref": [
      "r112"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash received from principal payments made on loans related to operating activities.",
        "label": "Plus: Proceeds from loans"
       }
      }
     },
     "localname": "ProceedsFromLoans",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromOtherDeposits": {
     "auth_ref": [
      "r99"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow for receipts of deposits classified as other.",
        "label": "Return of long term deposits"
       }
      }
     },
     "localname": "ProceedsFromOtherDeposits",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromRepaymentsOfLinesOfCredit": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net cash inflow or cash outflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with either short term or long term maturity that is collateralized (backed by pledge, mortgage or other lien in the entity's assets).",
        "label": "Advance (repayment) of short term line of credit"
       }
      }
     },
     "localname": "ProceedsFromRepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfEquityMethodInvestments": {
     "auth_ref": [
      "r98"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the sale of equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence.",
        "label": "Proceeds of equity investment distributions"
       }
      }
     },
     "localname": "ProceedsFromSaleOfEquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfMachineryAndEquipment": {
     "auth_ref": [
      "r99"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from sale of machinery and equipment.",
        "label": "Proceed for disposal"
       }
      }
     },
     "localname": "ProceedsFromSaleOfMachineryAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment": {
     "auth_ref": [
      "r99"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow for the sale of long-lived, physical assets used to produce goods and services and not intended for resale, classified as other.",
        "label": "Sale of property and equipment"
       }
      }
     },
     "localname": "ProceedsFromSaleOfOtherPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductInformationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Product Information [Line Items]"
       }
      }
     },
     "localname": "ProductInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ProfessionalFees": {
     "auth_ref": [
      "r630",
      "r632"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 6.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A fee charged for services from professionals such as doctors, lawyers and accountants. The term is often expanded to include other professions, for example, pharmacists charging to maintain a medicinal profile of a client or customer.",
        "label": "Professional fees"
       }
      }
     },
     "localname": "ProfessionalFees",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProfitLoss": {
     "auth_ref": [
      "r4",
      "r69",
      "r71",
      "r77",
      "r109",
      "r133",
      "r144",
      "r153",
      "r154",
      "r199",
      "r204",
      "r207",
      "r210",
      "r213",
      "r235",
      "r275",
      "r276",
      "r277",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r457",
      "r462",
      "r464",
      "r471",
      "r472",
      "r481",
      "r489",
      "r581"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.",
        "label": "Net income",
        "terseLabel": "Segment profit",
        "verboseLabel": "Net income for the year"
       }
      }
     },
     "localname": "ProfitLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r42",
      "r267"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Long-Lived Tangible Asset [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r270",
      "r638",
      "r639",
      "r640"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "PROPERTY, EQUIPMENT AND LEASEHOLDS"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholds"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r41",
      "r265"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Cost"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r16",
      "r17",
      "r267",
      "r531",
      "r582",
      "r598"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, equipment and leaseholds, net (Note 6)",
        "verboseLabel": "Property, Plant and Equipment, Net, Total"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r40",
      "r267",
      "r638",
      "r639"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Equipment, Leaseholds and Intangible Assets"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r16",
      "r267"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r16",
      "r265"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software."
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r86",
      "r241"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 18.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Bad debt expense"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RealizedInvestmentGainsLosses": {
     "auth_ref": [
      "r606"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of realized gain (loss) on investment.",
        "label": "Gross profit"
       }
      }
     },
     "localname": "RealizedInvestmentGainsLosses",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReceivablesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Receivables [Abstract]"
       }
      }
     },
     "localname": "ReceivablesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": {
     "auth_ref": [
      "r203",
      "r207"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues.",
        "label": "SCHEDULE OF REPORTABLE SEGMENTS"
       }
      }
     },
     "localname": "ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RelatedPartyDomain": {
     "auth_ref": [
      "r362",
      "r524",
      "r525"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests."
       }
      }
     },
     "localname": "RelatedPartyDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "auth_ref": [
      "r362",
      "r524",
      "r527",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.",
        "label": "Related Party [Axis]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RepaymentsOfBankDebt": {
     "auth_ref": [
      "r106"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to settle a bank borrowing during the year.",
        "label": "Repayments of Bank Debt",
        "negatedLabel": "Less: Forgiveness on PPP loans"
       }
      }
     },
     "localname": "RepaymentsOfBankDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfDebt": {
     "auth_ref": [
      "r106"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow during the period from the repayment of aggregate short-term and long-term debt. Excludes payment of capital lease obligations.",
        "label": "Repayments of Debt",
        "negatedLabel": "Repayment of convertible note"
       }
      }
     },
     "localname": "RepaymentsOfDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "auth_ref": [
      "r106"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.",
        "label": "Repayments of Long-term Debt",
        "negatedLabel": "Repayment of long term debt"
       }
      }
     },
     "localname": "RepaymentsOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r404",
      "r544",
      "r653"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 10.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.",
        "label": "Research"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedCashNoncurrent": {
     "auth_ref": [
      "r13",
      "r18",
      "r125",
      "r634"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.",
        "label": "Restricted cash, released upon reaching milestone"
       }
      }
     },
     "localname": "RestrictedCashNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r29",
      "r339",
      "r399",
      "r531",
      "r595",
      "r620",
      "r624"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Accumulated earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r0",
      "r139",
      "r140",
      "r141",
      "r145",
      "r152",
      "r154",
      "r238",
      "r395",
      "r396",
      "r397",
      "r427",
      "r428",
      "r480",
      "r617",
      "r619"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r190",
      "r191",
      "r203",
      "r208",
      "r209",
      "r215",
      "r216",
      "r219",
      "r349",
      "r350",
      "r545"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.",
        "label": "Sales",
        "verboseLabel": "Revenue from Contract with Customer, Excluding Assessed Tax"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "auth_ref": [
      "r190",
      "r191",
      "r203",
      "r208",
      "r209",
      "r215",
      "r216",
      "r219",
      "r349",
      "r350",
      "r545"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.",
        "label": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerMember": {
     "auth_ref": [
      "r181",
      "r219"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from satisfaction of performance obligation by transferring promised product and service to customer, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue from Contract with Customer Benchmark [Member]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r128",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r358"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue from contract with customer.",
        "label": "Revenue Recognition"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Revenues from External Customers and Long-Lived Assets [Line Items]"
       }
      }
     },
     "localname": "RevenuesFromExternalCustomersAndLongLivedAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SalariesAndWages": {
     "auth_ref": [
      "r85"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for salary and wage arising from service rendered by nonofficer employee. Excludes allocated cost, labor-related nonsalary expense, and direct and overhead labor cost included in cost of good and service sold.",
        "label": "Wages"
       }
      }
     },
     "localname": "SalariesAndWages",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": {
     "auth_ref": [
      "r167"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities.",
        "label": "SCHEDULE OF ANTI-DILUTIVE OPTIONS"
       }
      }
     },
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r426"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.",
        "label": "SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT)"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDebtInstrumentsTextBlock": {
     "auth_ref": [
      "r52",
      "r137",
      "r315",
      "r317",
      "r335",
      "r336",
      "r337",
      "r338",
      "r507",
      "r508",
      "r511",
      "r585"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer.",
        "label": "SCHEDULE OF OUTSTANDING BALANCE LOAN"
       }
      }
     },
     "localname": "ScheduleOfDebtInstrumentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable": {
     "auth_ref": [
      "r359",
      "r360"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule, table or text reflecting arrangements that are not equity-based payments, or pension and other postretirement benefits, with individual employees. The arrangements (for example, profit sharing, deferred bonuses or certain split-dollar life insurance arrangements) are generally based on employment contracts between the entity and one or more selected officers or key employees, and which contain a promise by the employer to pay certain amounts at designated future dates, sometimes including a period after retirement, upon compliance with stipulated requirements. This type of arrangement is distinguished from broader based employee benefit plans as it is usually tailored to the employee. Disclosure also typically includes the amount of related compensation expense recognized during the reporting period and the carrying amount as of the balance sheet date of the related liability.",
        "label": "Schedule of Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits, by Title of Individual and by Type of Deferred Compensation [Table]"
       }
      }
     },
     "localname": "ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r417"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.",
        "label": "SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES)"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r363",
      "r364",
      "r365",
      "r366",
      "r367"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosures about an individual defined benefit pension plan or an other postretirement defined benefit plan. It may be appropriate to group certain similar plans.  Also includes schedule for fair value of plan assets by major categories of plan assets by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets or liabilities (Level 1), Significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).",
        "label": "Schedule of Defined Benefit Plans Disclosures [Table]"
       }
      }
     },
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r166"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r411"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "SCHEDULE OF RECONCILIATION OF INCOME TAXES"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock": {
     "auth_ref": [
      "r217"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the names of foreign countries in which material long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets are located, and amount of such long-lived assets located in that country or foreign geographic area.",
        "label": "SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATES"
       }
      }
     },
     "localname": "ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable": {
     "auth_ref": [
      "r215"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular presentation of the description and amount of revenues from a product or service, or a group of similar products or similar services, reported from external customers during the period, if the information is not provided as part of the reportable operating segment information.",
        "label": "Revenue from External Customers by Products and Services [Table]"
       }
      }
     },
     "localname": "ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable": {
     "auth_ref": [
      "r219"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure about the extent of the entity's reliance on its major customers.",
        "label": "Schedule of Revenue by Major Customers, by Reporting Segments [Table]"
       }
      }
     },
     "localname": "ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r253",
      "r256",
      "r546"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r253",
      "r256"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.",
        "label": "SCHEDULE OF PATENTS"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock": {
     "auth_ref": [
      "r250"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of goodwill and intangible assets, which may be broken down by segment or major class.",
        "label": "SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS"
       }
      }
     },
     "localname": "ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r14",
      "r35",
      "r36",
      "r37"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.",
        "label": "SCHEDULE OF INVENTORIES"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "auth_ref": [
      "r274"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt.",
        "label": "SCHEDULE OF INTEREST LOAN REPAYMENT"
       }
      }
     },
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductInformationTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule detailing quantitative information concerning products or product lines by product or product line.",
        "label": "Schedule of Product Information [Table]"
       }
      }
     },
     "localname": "ScheduleOfProductInformationTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r42",
      "r267"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/PropertyEquipmentAndLeaseholdsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock": {
     "auth_ref": [
      "r89",
      "r216"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the names of foreign countries from which revenue is material and the amount of revenue from external customers attributed to those countries. An entity may also provide subtotals of geographic information about groups of countries.",
        "label": "SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA"
       }
      }
     },
     "localname": "ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": {
     "auth_ref": [
      "r79",
      "r218"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material.  An entity may also provide subtotals of geographic information about groups of countries.",
        "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStatesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r373",
      "r394"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r378",
      "r384",
      "r386"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.",
        "label": "SCHEDULE OF STOCK OPTION ACTIVITIES"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r389"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.",
        "label": "SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS"
       }
      }
     },
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShortTermDebtTable": {
     "auth_ref": [
      "r46"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to borrowings under which repayment was required in less than twelve months (or normal operating cycle, if longer) after its issuance. It may include: (1) description of the short-term debt arrangement; (2) identification of the lender or type of lender; (3) repayment terms; (4) weighted average interest rate; (5) carrying amount of funds borrowed under the specified short-term debt arrangement as of the balance sheet date and measures of the maximum and average amount outstanding during the period; (6) description of the refinancing of a short-term obligation when that obligation is excluded from current liabilities in the balance sheet; and (7) amount of a short-term obligation that has been excluded from current liabilities in the balance sheet because of a refinancing of the obligation.",
        "label": "Schedule of Short-term Debt [Table]"
       }
      }
     },
     "localname": "ScheduleOfShortTermDebtTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtTables",
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r256"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.",
        "label": "SCHEDULE OF ESTIMATED AMORTIZATION EXPENSE"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r187",
      "r190",
      "r191",
      "r192",
      "r193",
      "r194",
      "r195",
      "r196",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r213",
      "r219",
      "r271",
      "r272",
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r187",
      "r188",
      "r189",
      "r199",
      "r202",
      "r207",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r218",
      "r219",
      "r220"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.",
        "label": "SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingAndMarketingExpense": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 9.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services.",
        "label": "Advertising and promotion"
       }
      }
     },
     "localname": "SellingAndMarketingExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r115"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Stock based compensation"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "auth_ref": [
      "r391"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.",
        "label": "Volatility"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r392"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Interest rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r381"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number",
        "periodEndLabel": "Number of shares Exercisable, Ending Balance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "auth_ref": [
      "r383"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period",
        "negatedLabel": "Number of shares, Cancelled or expired"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r383"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price of options that were either forfeited or expired.",
        "label": "Weighted average exercise price, Cancelled or expired"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Number of shares, Granted",
        "verboseLabel": "Stock options granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r385"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.",
        "label": "Weighted average fair value of options granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r380",
      "r394"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number",
        "periodEndLabel": "Number of shares, Ending Balance",
        "periodStartLabel": "Number of shares, Beginning Balance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Weighted average exercise price, Ending Balance",
        "periodStartLabel": "Weighted average exercise price, Beginning Balance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue": {
     "auth_ref": [
      "r388"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest exercisable or convertible options. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.",
        "label": "Aggregate intrinsic value of vested options"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r371",
      "r376"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Weighted average exercise price, Exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Weighted average exercise price, Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Price of a single share of a number of saleable stocks of a company.",
        "label": "Share price"
       }
      }
     },
     "localname": "SharePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": {
     "auth_ref": [
      "r374"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of vesting of award under share-based payment arrangement.",
        "label": "Options granted percentage"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Intrinsic value of vested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Aggregate intrinsic value of vested options exercised"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "auth_ref": [
      "r375"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Options maximum granted term"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r390",
      "r400"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Expected life - years"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r387"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Weighted-average remaining contractual life"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1": {
     "auth_ref": [
      "r381"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price",
        "periodEndLabel": "Weighted average exercise price Exercisable, Ending Balance"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Shares, Outstanding",
        "periodEndLabel": "Ending balance, shares",
        "periodStartLabel": "Ending balance, shares"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShippingAndHandlingMember": {
     "auth_ref": [
      "r351"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Packing and transport of product.",
        "label": "Shipping and Handling [Member]"
       }
      }
     },
     "localname": "ShippingAndHandlingMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShortTermBorrowings": {
     "auth_ref": [
      "r19",
      "r531",
      "r568",
      "r591"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than one year or the normal operating cycle, if longer.",
        "label": "Short-term borrowings"
       }
      }
     },
     "localname": "ShortTermBorrowings",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShortTermDebtLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Short-term Debt [Line Items]"
       }
      }
     },
     "localname": "ShortTermDebtLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtTables",
      "http://flexiblesolutions.com/role/ScheduleOfInterestLoanRepaymentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShortTermDebtTextBlock": {
     "auth_ref": [
      "r319"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for short-term debt.",
        "label": "SHORT-TERM LINE OF CREDIT"
       }
      }
     },
     "localname": "ShortTermDebtTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCredit"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShortTermInvestments": {
     "auth_ref": [
      "r21",
      "r572",
      "r573",
      "r589"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current.",
        "label": "Short-term Investments",
        "periodEndLabel": "Term deposits"
       }
      }
     },
     "localname": "ShortTermInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r126",
      "r138"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "SIGNIFICANT ACCOUNTING POLICIES"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r3",
      "r187",
      "r190",
      "r191",
      "r192",
      "r193",
      "r194",
      "r195",
      "r196",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r213",
      "r219",
      "r250",
      "r268",
      "r271",
      "r272",
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r24",
      "r25",
      "r26",
      "r130",
      "r133",
      "r160",
      "r161",
      "r162",
      "r164",
      "r166",
      "r173",
      "r174",
      "r175",
      "r235",
      "r275",
      "r279",
      "r280",
      "r281",
      "r284",
      "r285",
      "r320",
      "r321",
      "r324",
      "r328",
      "r334",
      "r489",
      "r670"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by the different classes of stock of the entity.",
        "label": "Class of Stock [Axis]"
       }
      }
     },
     "localname": "StatementClassOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r0",
      "r53",
      "r75",
      "r76",
      "r77",
      "r139",
      "r140",
      "r141",
      "r145",
      "r152",
      "r154",
      "r172",
      "r238",
      "r334",
      "r339",
      "r395",
      "r396",
      "r397",
      "r427",
      "r428",
      "r480",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r617",
      "r618",
      "r619",
      "r675"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsTables",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity",
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r139",
      "r140",
      "r141",
      "r172",
      "r545"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ConvertibleNotePayableDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsTables",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity",
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesNewIssues": {
     "auth_ref": [
      "r25",
      "r26",
      "r334",
      "r339"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of new stock issued during the period.",
        "label": "Common stock issued, shares",
        "verboseLabel": "Non-voting shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r25",
      "r26",
      "r334",
      "r339",
      "r382"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Stock options exercised",
        "negatedLabel": "Number of shares, Exercised"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueNewIssues": {
     "auth_ref": [
      "r25",
      "r26",
      "r334",
      "r339"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.",
        "label": "Common stock issued"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockOptionPlanExpense": {
     "auth_ref": [
      "r116"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for option under share-based payment arrangement.",
        "label": "Stock option expense"
       }
      }
     },
     "localname": "StockOptionPlanExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r26",
      "r31",
      "r32",
      "r133",
      "r226",
      "r235",
      "r489",
      "r531"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.",
        "label": "Stockholders' Equity Attributable to Parent",
        "totalLabel": "Total stockholders\u2019 equity \u2013 controlling interest"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders\u2019 Equity"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r0",
      "r1",
      "r76",
      "r133",
      "r139",
      "r140",
      "r141",
      "r145",
      "r152",
      "r235",
      "r238",
      "r339",
      "r395",
      "r396",
      "r397",
      "r427",
      "r428",
      "r455",
      "r456",
      "r470",
      "r480",
      "r489",
      "r498",
      "r499",
      "r503",
      "r618",
      "r619",
      "r675"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.",
        "label": "Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest",
        "periodEndLabel": "Ending balance, value",
        "periodStartLabel": "Beginning balance, value",
        "totalLabel": "Total Stockholders\u2019 Equity"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r131",
      "r321",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r339",
      "r340"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.",
        "label": "CAPITAL STOCK"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStock"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsequentEventLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.",
        "label": "Subsequent Event [Line Items]"
       }
      }
     },
     "localname": "SubsequentEventLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [
      "r504",
      "r533"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event [Member]"
       }
      }
     },
     "localname": "SubsequentEventMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTable": {
     "auth_ref": [
      "r504",
      "r533"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued.",
        "label": "Subsequent Event [Table]"
       }
      }
     },
     "localname": "SubsequentEventTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r504",
      "r533"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Axis]"
       }
      }
     },
     "localname": "SubsequentEventTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r504",
      "r533"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r532",
      "r534"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "SUBSEQUENT EVENTS"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of units or percentage investment held in the subsidiary by the limited liability company or limited partnership.",
        "label": "Subsidiary company ownership interest rate"
       }
      }
     },
     "localname": "SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental disclosure of cash flow information:"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxPeriodAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information about the period subject to enacted tax laws.",
        "label": "Tax Period [Axis]"
       }
      }
     },
     "localname": "TaxPeriodAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxPeriodDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identified tax period."
       }
      }
     },
     "localname": "TaxPeriodDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TaxesPayableCurrent": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Income taxes payable"
       }
      }
     },
     "localname": "TaxesPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TechnologyEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment used in the creation, maintenance and utilization of information systems which include computers and peripherals.",
        "label": "Technology Equipment [Member]"
       }
      }
     },
     "localname": "TechnologyEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TravelAndEntertainmentExpense": {
     "auth_ref": [
      "r93"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 11.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expenses incurred for travel and entertainment during the period.",
        "label": "Travel"
       }
      }
     },
     "localname": "TravelAndEntertainmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TypeOfArrangementAxis": {
     "auth_ref": [
      "r454"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.",
        "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]"
       }
      }
     },
     "localname": "TypeOfArrangementAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r176",
      "r177",
      "r179",
      "r180",
      "r183",
      "r184",
      "r185"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.",
        "label": "Use of Estimates"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_UtilitiesOperatingExpense": {
     "auth_ref": [
      "r92"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 16.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating expense of regulated operation.",
        "label": "Utilities"
       }
      }
     },
     "localname": "UtilitiesOperatingExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index."
       }
      }
     },
     "localname": "VariableRateDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r159",
      "r166"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.",
        "label": "Weighted average number of common shares (diluted)",
        "verboseLabel": "Diluted"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r158",
      "r166"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Weighted average number of common shares (basic)",
        "verboseLabel": "Basic"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 7
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3367-108585"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3000-108585"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6787-107765"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21D",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=SL94080555-108585"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3521-108585"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3044-108585"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3095-108585"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6801-107765"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3098-108585"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4273-108586"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4297-108586"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4304-108586"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4332-108586"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=SL98516268-108586"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18726-107790"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(c))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6812-107765"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(e)(1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(f))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=SL108384541-122693"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "250",
   "URI": "http://asc.fasb.org/topic&trid=2122394"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1448-109256"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1505-109256"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1252-109256"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1278-109256"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2626-109256"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1337-109256"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "http://asc.fasb.org/topic&trid=2144383"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=124437754&loc=d3e543-108305"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70229-108054"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "http://asc.fasb.org/topic&trid=2134479"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8657-108599"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8844-108599"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8924-108599"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(2))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8981-108599"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5144-111524"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/subtopic&trid=2196772"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(1)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(2)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/subtopic&trid=2196816"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=123581744&loc=d3e27405-111563"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=109237563&loc=d3e33749-111570"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "323",
   "URI": "http://asc.fasb.org/topic&trid=2196965"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "http://asc.fasb.org/topic&trid=2126998"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=123349782&loc=d3e5879-108316"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=6387103&loc=d3e6435-108320"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123465755&loc=d3e1835-112601"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6036836-161870"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496180-112644"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21463-112644"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21475-112644"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21506-112644"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21521-112644"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21538-112644"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(5))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130561-203045"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130563-203045"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130563-203045"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130564-203045"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130543-203045"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130545-203045"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(i)(2)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "http://asc.fasb.org/topic&trid=49130388"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "710",
   "URI": "http://asc.fasb.org/extlink&oid=6409733&loc=d3e19524-108361"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "10",
   "Topic": "710",
   "URI": "http://asc.fasb.org/extlink&oid=6409875&loc=d3e20015-108363"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2439-114920"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=123468992&loc=d3e4534-113899"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a),(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(f(1))",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.1)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)-(4)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.12)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11149-113907"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11178-113907"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32059-109318"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.14)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.17)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "37",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123455525&loc=d3e2207-128464"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123413009&loc=d3e4845-128472"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "38",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5504-128473"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "38",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5504-128473"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6578-128477"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6613-128477"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "50",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123385561&loc=d3e9135-128495"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "50",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123362884&loc=d3e9212-128498"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "50",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123362884&loc=d3e9215-128498"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "808",
   "URI": "http://asc.fasb.org/extlink&oid=6931272&loc=SL5834143-161434"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4568447-111683"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4568740-111683"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569616-111683"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569643-111683"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4613674-111683"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4I",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4590271-111686"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4M",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591554-111686"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "810",
   "URI": "http://asc.fasb.org/topic&trid=2197479"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19279-110258"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13279-108611"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=120253306&loc=d3e28228-110885"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=123602790&loc=d3e30226-110892"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=125521441&loc=d3e30690-110894"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=124440516&loc=d3e30840-110895"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "205",
   "URI": "http://asc.fasb.org/topic&trid=2122149"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "830",
   "URI": "http://asc.fasb.org/topic&trid=2175825"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28541-108399"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918673-209980"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918701-209980"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "848",
   "URI": "http://asc.fasb.org/extlink&oid=122150657&loc=SL122150809-237846"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124437977&loc=d3e55792-112764"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "http://asc.fasb.org/extlink&oid=123353855&loc=SL119991595-234733"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=123371682&loc=d3e55415-109406"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "730",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(1)",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(2)",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079"
  },
  "r549": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(3)",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r550": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004"
  },
  "r551": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-10(c)(3)(ii)(A))",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123726172&loc=d3e511914-122862"
  },
  "r552": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-10(c)(7)(ii))",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123726172&loc=d3e511914-122862"
  },
  "r553": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447"
  },
  "r554": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447"
  },
  "r558": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447"
  },
  "r559": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r560": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447"
  },
  "r561": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447"
  },
  "r562": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447"
  },
  "r563": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(1)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447"
  },
  "r564": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(2)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447"
  },
  "r565": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "http://asc.fasb.org/extlink&oid=123384075&loc=d3e41242-110953"
  },
  "r566": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r567": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a)(4),(5))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r570": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r571": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r572": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(4))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r573": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(5))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r574": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(14)(d))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r575": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r576": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r577": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(24))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r578": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(25))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r579": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r580": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r581": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884"
  },
  "r582": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630"
  },
  "r583": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6479118&loc=d3e64650-112822"
  },
  "r584": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Subparagraph": "(c)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823"
  },
  "r585": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823"
  },
  "r586": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=123345438&loc=d3e61044-112788"
  },
  "r587": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r588": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(5))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r589": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(1)(g))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r590": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r591": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(1))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r592": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16)(a))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r593": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r594": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r595": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r596": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(24))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r597": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r598": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r599": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.9)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r600": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(20))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r601": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(21))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r602": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r603": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(3)(a))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r604": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r605": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r606": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04.3(a))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r607": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=6933075&loc=SL5748726-161290"
  },
  "r608": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "360",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=123605564&loc=d3e23415-158514"
  },
  "r609": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "360",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=123605564&loc=d3e23439-158514"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312"
  },
  "r610": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=123605587&loc=d3e23528-158515"
  },
  "r611": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438"
  },
  "r612": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439"
  },
  "r613": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r614": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r615": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r616": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117819544-158441"
  },
  "r617": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r618": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r619": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=51824906&loc=SL20225877-175312"
  },
  "r620": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r621": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r622": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r623": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r624": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r625": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195"
  },
  "r626": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "205",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=118262037&loc=d3e9915-115836"
  },
  "r627": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=118262064&loc=SL116631418-115840"
  },
  "r628": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=118262064&loc=SL116631419-115840"
  },
  "r629": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(13))",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=120401414&loc=d3e603758-122996"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313"
  },
  "r630": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Subparagraph": "(k)",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=124433917&loc=SL114874205-224268"
  },
  "r631": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=124433917&loc=SL114874234-224268"
  },
  "r632": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07.2(a),(b),(c),(d))",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=120401555&loc=SL114874292-224272"
  },
  "r633": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "http://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014"
  },
  "r634": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=120413173&loc=SL116631458-115580"
  },
  "r635": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=123366838&loc=d3e3073-115593"
  },
  "r636": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=123364037&loc=d3e3115-115594"
  },
  "r637": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "450",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=6491354&loc=d3e6049-115624"
  },
  "r638": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916"
  },
  "r639": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580"
  },
  "r640": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916"
  },
  "r641": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r642": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r643": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r644": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r645": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r646": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r647": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r648": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r649": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580"
  },
  "r650": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 4))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r651": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "http://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663"
  },
  "r652": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "http://asc.fasb.org/extlink&oid=123360121&loc=d3e27327-108691"
  },
  "r653": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r654": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12"
  },
  "r655": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r656": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r657": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r658": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r659": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "g"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e637-108580"
  },
  "r660": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12, 13, 15d"
  },
  "r661": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r662": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r663": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "15",
   "Subsection": "d"
  },
  "r664": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14a",
   "Subsection": "12"
  },
  "r665": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310"
  },
  "r666": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a"
  },
  "r667": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f"
  },
  "r668": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f"
  },
  "r669": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e681-108580"
  },
  "r670": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "1402"
  },
  "r671": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r672": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r673": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "425"
  },
  "r674": {
   "Name": "Securities Act",
   "Number": "7A",
   "Publisher": "SEC",
   "Section": "B",
   "Subsection": "2"
  },
  "r675": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848"
  },
  "r676": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "848"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669686-108580"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e557-108580"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(22))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(23))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(4))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(b)(7)(c))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(b)(9)(a))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(b))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.6)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7(b))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7(c),9(a))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.8)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>107
<FILENAME>0001493152-22-013262-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001493152-22-013262-xbrl.zip
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
M_!5+72QSLPIS44S+TF16<3;]C.W#3FA6\9^*^/\R@O^,Y']02P,$%     @
M.7"M5#;G\MCV!P  /D0   H   !E>#,Q+3(N:'1M[5Q;;QNW$GX/D/_ 8Z"%
M TB6[=3G05(-2)'<"'5CPQ8.3A^IW5F)-9=42*X4]==WAMS5W8G=2HBWEA\L
M[RXO'R_SS3>SM)H?^[]=7[Y]T_S8;77PD]%/L]_K7W<OF[7PB4]K^>-F^Z;S
M.[OO_W[=_?DHT<K5V=GIV+&^2,&R3S!E=SKEJA)N5-@]&)$<4<7;Y]9JL)2;
MH5!U1D5/CRZ;5S>?^LNM5!.>"CFK?ZL=7]:*/R%T>W3YHQK8<:-9HP9QE+>(
M;P<(&\S!%U?E4@SQEA'#D=L=Z+QQ9[BRB39IG67C,9B(6\!.VI?=_W_LM7O]
MMV_>GYV<-VOMR_V.+@+EP)1M37:/^D/WKM^[ZGUH]7LWG^YWC;YL\_M'9IU(
M9KN$W:N\?=/A2H!D[1-V\Z.QGS/=:!L!6#<"0_TQ-^*N7KJA;5^1?JM]W64?
MNM?7][>M#[U/O_Q\='KDKV];G4YQ_>RA347L1E3T](<&&V@3@ZE&6DH^M@BH
M^.O(>X!F_^[Y'4QH+2(NBPES>GR4^Y-FOU.TMV5*P\P\:Q2G)^<70NUR+<Y.
MYNO0[VS"?CK"?9M#@#;B$V &)@*F$./V%Y9QI3(N\>98&\>T8E?H);!6]==:
MB^F$74GX(@82V+V6F1-:6=8C-E2<+KBLX&5TTEB>!OQU]Z(WQ!ZM\47O@DVL
MKVJISDMBK&T49W& A_:8SMB#TE,)\1 JP6:#L598K+%=I1WRL')<*#3F&<N4
M,QDPZ[B#%(4+&3%'%X4V*]#0$Q[A+<-T*APN6"BW44!!!-9R,PLPL%S*'P![
M7VK8XKT8(6&_DD0K=40%(F&B+,5B"MM ..@RV'0DHA&S&?U:U)^"@;P1&D4J
MK 0>"S5$PG8C'*8=0T0H<Q38.&I7H6,<,.X]I+#!S-\-$_)Z=_:!A$JS5.__
M%20$+!$*#9P(8V'0%22@F&E\;):>"T6!IY<+^'<DLQ@-%TECA<H2+HR<L3':
M/'$6<9F4<U(*.'(^L&O](_G%@EJO4(E,8@%D(HU,P8->(5 8\(Y8(O74%C1E
M8"@LQ<6.<;H9P"/4RA+1V *1AUS0T!SWZ]W&!\8IS5+]5!+&Z8^@L//",O.P
MW>:<DL?M)!!TD@B\/+;OO-GV&#?@"0(-WH<K:,@,D)H&4M@1U:!B*8HD$DIT
M'0L;26TSK$?RR6@9F&)L= 0QWK8!S3&R0PQ(-X&UNE^B$5=#8"U4)G>9Q"&>
MO>?5LXMC"%#.+N)P%2Y%")9DT0DCY;+$7H%("- C'044&[TE*[TEV!N->)W8
ML 3%?/7MF[_FDP:[R+(>DAXOC4'VF/1X O>_5.C\73FXL ,6FRX$F(^;OLU7
M%8KK(IZA<'MJ%8KL!H"T$[K+HS6=&6P %=!$6-)5\R 0E&^,\J:+@'%9WQF0
MW),9%E[EHDJN_>BA0(F&@*R6(N;.HQU8$0MN!(U"A,C2*TY%+666 CWO W)2
MIOC02TAM 5$YU']4<\S)KC+)24OB #V21=2(-4(@NB3AJ+<!4$%4>E@?XM>K
M%/9MV <!>MA6+WQ;#<KK()ZL-#?\Q-,UZF/NHH"Q\!E4%/W,1,3D!;C5BI,L
MYQ8]"&4&R35P$Q<,C8Y#\(&0PLTH0-_6-WDN3^:>IX._62FZ2$0$.#X$^)(/
M;9R9,3H+ZU,+482BSJ/PB<8A*#!<HL_ )S FCT1%,N6"7T#/)<:HO0\F7 83
M/GB&P[;: ]:H))ZA.^$R(U6]>&D"20*1$Q.D.;LE_SG/LCPA7@B7BY3HBI2F
MN $KHLRW(?$ZT)G[!HRGA#5\7AHHOYP\^B9H 65 Z6O*7'L'!V%.$%0CP,$>
M#D97 J,[</EA6^T!:UP2+N\$<BRX?(UNZ6U_GHSV3[9R^C.T/65U=!1EAOAT
M*7NRV6J DVKK\"&=CL0&+6Y5]CGC!OMCQX^@2=!%H.!>*YVCIT.I_K2"6CV5
M]"Y &W$[3SJ15/?>!.(\.X5:W\],'FG,F!0/@!_^Z,):I<H_GJS&XQ[DD%0_
M)-7_QEI<O(JW=/X 8ERP6F4ATT@Z+O/)0K$1(VRURSS(WY;?V,@^SR'R+!9.
M&SO/)O@;V&Z:"N< OJ*.!YH;KSYC@2!](\<Z1X%BU)+BQ4]*AA?,"9\S@0/Q
M!)FIR!]'>'=X&5=&WG@!%+%3,?SJ7[&U9'ZLB'*9 GF*7IC3^_=( !)*'NO.
MWW)-@3]0W!HRB#YR]5E0?Y:R.&OT*%=M%5SA710W<T+=HEUXC+4MS*7+H[R6
MYTZQ"I(36DDE1- 69\!F*?(##MV/*!>/6\]G?;_H^(5&+"6']2^->4N^*J_Q
M?55+Y4?)$X.*JX+<!UXL(GOZH]\YS59"J"?41,L)4+RG^# _QFYR?0GI6.H9
MX-/I2 =%R5=('$GW*Q%Q$4H_D:5/OHM:RV\*%0,UNG<M<9!PVP!?G/ZPTVP.
M;O)Z0/4;G[&S\PH[/ST__ZH!Y[,UT,[IM,X&DD</[.SD L?@C\_\C=AUQZ-J
M]BYKMA: /_(?E\U:[_+@([X;K+ J <KFTAR6Y3O!N@WG"HK_;KB:^YZ;D#79
MM^/9NSM!C/^I5G%@(.,ZNT5'WL &/F<87E'%!KL9^XQ(G5USZUBU6JQ+I_>_
M E5 /.>__](W&JQQ8GN=$W%@"T>V[+C6'=LJQVYZI#7/M4E]"SO9LOM7';N$
MQ->8;[FEIA?S5RQUL<S-&LY%,2U+DUFCV0PS5H:=T*S1]W^$+P2A[PWY"U!+
M P04    "  Y<*U4(V)2L1@$  #@$0  "@   &5X,S(M,2YH=&WM6&UOXD80
M_H[$?Y@B791(@ VYG'K@0P),+JA<0.!6S<?%7L/VEEUGO;[$_?4W:V->$[57
M<<TU*A\ V[,SSS//S.R"<^-]&G7*)>=FT'7Q$\S+\8;>:-!QK/P3GUKKQTYO
M[-[!S+L;#3Y40BET"QIVI,%C*QK#+7V J5P14<UO5&%&%0LKN!"73HIU*Z(6
M3+3 KG3.Q#R.VHXU.3#YNZ[;L'&&IG8;-'W4-<+9 F\IMECJ2L>Y'M]ZNXYK
M(5DQGK;^RG5F&[,_:8X$/?4Z@]]OAKVA5RY=-NL-Q^IADHS[SG>BX%.AJ3H=
MA[5WK8B(0ZE6+4BBB"J?Q#2C5^CQVGCUJ=(L9#[1P_%MN21#F"@F?!81#H-'
MZB>:?:$P#M&$*J<W1<Z31,4)$1JTA,;/\&M]5N_7,;ROF130N+RRJ[DAB:$;
MR$C3 ';7%);O[7<@P]>74KVDY=*,J#D1-*Z-'SE-H>MKY I-VVZ^/L+_5F_\
MD<18J^GZ)A,!-4[M^A43IQQF,\DI3\LEI JH)42)BF2,+E! 7ZXBGC*Q@ >F
ME\^5/V#EDW7E1\]6?N;\^3JIPK *62TER%3%F +32$]T)Q$!7#-!\ '>7_>J
M<7/-Z2.;<XPB>6(BQS TI2&(N2 <0PB_#N<&R!D/[A/9[B-!(M(SE5U=5&%)
M%9VG6%-F3F!6])+HJB%C%LUIG.%=I?!9R =.@P7-0$-7B 3!3&DD%9H(N,;"
MP037?K&Z!?=U+"@2G5*B@"+9 %SJT]4<65PVJIB-9F,/9.ZUP(A*)9RGN38,
M=<JD,>:*WB=,T1762:;>5J1S<@$8M7%U'EQLI,!\*J:-A\&COR1B00L]&N\O
MWV9I-NPS8R9,)V1YQ,!"$X;JE$M,9$_7M$/"% *+%(T-A"JN L(YUCB*8+3"
M!Q%BBO.<A1L-T6/ ,M\F*%HE/&<@L>](KN1^$NNG;KU3=E0Q(/81>MW>: #]
MP6@TFW3[P]N/'RIV);N>=%VWN/YF%@\LT$MC:K]IPUPJ[)V:+SDG48R BF^5
M[$CG>--O#_#%M()/>#&6M(PJZP.BX[G_&/"5_>:4.7>QQEHYJD\DA48SZZ/F
M1@3//<:\SM9<:BUQRL\Y\3]#HWZ%'&+)69"'>4E6SK!CQ58.W"6"40Z].HS/
M5&Q&04\Q*AQKV-EEB6_3'T7L[]A43^GY$K!R57(HQ]+\+\L+P=J<&W(T^X>'
M[:'BZ!CQM&16-KL[_X5M!C'^5*LA,<J#%DS(@K;1P7U"A6\6MF$<9?MI"T8$
M#S.U6J&7._QM_W?Y9BZ^,T?B@UG9.YR52&R[P>UN:(<;WO[L/=ZI#G:TXY&X
M[9\GNF+_!,UIF*W8E.*.ZVW^"JD+F1T+<U&D92>9ELEFGK$?OQ+PY\G8O<O_
MLC'_['P%4$L#!!0    ( #EPK52%>@-\]LP! )48%  -    9F]R;3$P+6MA
M+FAT;>Q]:W/;1K/F=U7I/V"]R5:R1<DD=;<3;]&RG.B-+>F5Y#@Y7UQ#8$@B
M!@%Z $AB?OUV]\S@1E 295($R-FSYT0F;CTSS_3TO7_Y?W=#S[KA(G0#_]<7
MK>WF"XO[=N"X?O_7%W'4VSI\\?_>;&[\,HC@/KC7#W]],8BBT:N7+V]O;[=O
M=[8#T7_9.CHZ>GF'][R0-[VZ*[VOW6RV7O[U\<.5/>!#MN7Z8<1\FR</>:[_
M=?K[\6IR:U=X;NY6_$5_9.?EQ*OAJI,^D+UY_Z6\F+LU*KUU3]X:Z5O=,-AM
MMP[NHT/>D3QP-^W>%M(,(^1_O;W\D-X>E=^?WOHR$LP/>X$8L@C6$-^TM]5L
M;[7W,R_9"KF=>Q'\>[L?W#SXGL.MG99^S\3BY$>*E[LL3&;<X87IUM^$"_!$
MN_5M5]\J>&_JB_=?PE5]8QR)J3<>O82KR8WA5I^Q47)SCX5=NE%=( *VFJW,
M\."*"#P>ECY#5TH><B*Q%8U'/"PG"RZ_Q,OX9!.?;"=/VD'L1V)</D7J(GU0
M/Q"*:)(T^+&$JO=7I^FM'K]SNT!]X,6XL.&V'0SIF58;GJ"]S9D#_[7P__T2
MN9''W_SR4OX7K@YYQ"Q\V1;_%KLWO[XX#OR(^]'6-0SLA67+?_WZ(N)WT4O)
M E[B<R_5:W_Y7UM;UGN7>\XKZXI'KZTS-N2OK#OG[K5U^H[^^-)L=[Y\NOJQ
M_>ZW3N<"_H/D65M;CWUZ9^\+#/E+Z5"_Z*'.\+[=?7JJ"?_SE,?WCKYP #F,
M _[_B0\S.3Z&*1+,._4=?O<''W]I B-L[A_M'.W.\MZ]S'L[0^X[\+_1>X_U
MOT0BYK.\J9-YT[O CNE%;F@S[X(+-W#>PV_AE_=_S_#.@_TO?[W[ZPMRD%83
M7OMU&WZ>X?G]MP"!=U]:7Q3+E,3!3[.\H_WE:L $#[^TO] )(5\2TF^SO.<=
MTG*AWK4S0=+WO?SHRT4L^)?=[%M&\,ML!%[Q/JY:^*69_#G+"TZ^''?>P;.Y
MH<%/LQ$1?NM%\!+@O&HRX-_J#=W &5MA-/;XKR]ZP"1>6:WF*+*NW2',UAF_
MM2Z#(?,;\H<&?$6X/6)'CGNCGW/<<.2Q\2O+#WQ.%]V[5\A7N$"&1?]R'8?[
MQ+[PGW#C&:!9N+;D3'?1)1XN[T4PU'RRV8H"^KO5)I[IP]#@4]Q]5;I77[Q)
M-^LO+W.?^)ZORI/VUQ=P.K_J!G"\,!\W<9:<W!9_\08OSY& ]#M3&<"+-^__
MGN,77>?7%P"<MHNX;S910BG._2G(GF(4"))!KB(6\6-Y%!X'#@"@T[R'G/>"
MV?B8>JDZZ5_]QES_0Q"&Y_X5\_AY[T($(RZB\84',WX"1]H(Q_[BB:-H'X 4
M$_NN? Y8 YS!X2O?]>! Q.5\HPG6U-U#,9QA$]1^8+Y32EM3TD9_3:'L<*Z4
M78Q&'P+FOP>QP[WA/@_#)])UV)K[C)W['1M6,G3QVI.7\G!_;H0]#_AV#IKS
M76(V!L7,_@I41IPNPE]]P89S6?B=@X.YSR_09W/NA$C#>33@XAT?!0"#<A(?
M,:6[S?F# *:5CN?K@% J^-LX='$>>7C&H_/>,0L'ZDKY7G\,W:V]A4[N:1C&
MJ$\#1PK\_C47PW>\^V3@[N[,?Y8O^4C-\WGONVC;;<^=-CS6AOR:W?'P@KD.
MK/J3J9LC5]?4T<8Y#H8CP0?<#V&32WIAQW.W[Q_'0G#?'E^C@4"^H.,[]"^/
MSNF.\T\<1CCU!&<8YD4@Z$(4";<;1PR4LNO@ N3D*;QN@G=\4;1] ;*&* D$
M]M>/?-CE8F)"CN;/5:HX(2".1:#-'K.1&Z%P>G)G P>!$X6)/YD7\VFSLUYP
MN>01G+C<.6'"=_U^.&U6CM9J5LX"'^\7@>?!I)S"DZ"Q1N5SL]></_N#@Z3G
M1B@'S7OW[S47<NS-1NW3MN;>(B2-ITYTQP85, 8D<F<:D*>-8OX,AM8;!0[N
MO(L%(%:JI#279_R6KLPZP,<QAKT%2%&+&,W3EZLU?] M8H S<:S6_"'XT?4#
M0?8(^>5WW!:<A1P)?^>&DB.CB?DZ*"?U]\!SN)@_OVOOU'VL3^26[?G969:\
MR(]D1>WYLZ(E#?CIW*H]?VZUI#F0<MNT8<Y?A4G%230[. Y9QIB'VN>IK_8>
MN3?09>O@BL!RD"!ZR:4EC5]Q<>/:7'+S2VX'?9_>0KMT[HQM9WY6P8K.P2/W
M_<[\.7S%)N+I_&!G_H= Q>9F)L%G 5:TY:NQK61N6C,SD=U5U.LG)^2)(M3>
M_+P%59Z=&?GMWOP/GBK/RDP,9F_^_/8!$\7W[/Z]A?B79J/VJ5MS_BKLDR?Z
MZ<?S_OP9S-.-"]_-&/;G#Z=%C.8[EJM*IKLY<:PY>L2?16/\'GYW4#,+P=RX
MY4'-S +?S8H6$#FQI $_G5LMP/&]I#FXUQ9T,'\59BDJ[O<PML,5,8%\][X_
MG#^'K]A$/)T?+"!:KV)S,Y/@<SA_]GCJW\!4!&+\.1!?3WT*!RMJ$QTXK:='
M*QT<SI^;Y4(H06].HB@GHJKRM"73^@%9_  X]RE +;CAM-[ELWJX& 7X^^A_
MQV^X!^]PKKD]\ ,OZ(\OW?Y@ZA@6H)5E=NT[#OO5=FD7P-\>5^:,SA!-%O_2
M[U.'_+CU8KXS;6@56)ZB!7?&Y3G:F7^\S4*7ISC>Z<MSM #[--(6C3_R:! X
MR)\4N[Z74J5EG/BC2\Z\:/SAP[$D> \TB;V=5KM >*NU@!BH60AO/43X),'S
MWP@S$-PZRA/\8=P/0CB\IQ"[ !T]&ZJ,P>I/C?]N[<S1A4 A]07"=)SW9S<:
M?'_.0FMG;_Y(S092OV7^UZG!U ]%_ -U\V< T\//RS?/[TP(-\1QE*-Q9W\)
M-#9GI7'^PMW3Y_'<+Q?)6_-,1_G^J;R'S/GOF5EG\Z/KP&'K4(;;?0L_Q^RR
MIY+Z/A#.QP#4@&-@6VZ$6@_SQ]/H70)0F]]![^$2$%N8WZE)5]-(7CYZIY(\
M?<\M0%M_QWM<P!HKKVJ28W-RAVHY?\M]WG.?FFC3VEV ZI>0B(8!WW8]*9<?
M#YC?YZ?^B0]/@=X UX$M/.W(W9UC=F5QHH&P3ACR*'S'A7L#I*.%)H37/BS)
M)K8_YC.'78**Y,>\TT<O>#E@YAF)C7)8<0R/5;8?3_ <@_AF(7@BTN[Q!,_?
M-C.!E'-0+ $H?A_]T,=P-H][@;AEPGD<7,CFY3-/#4<9UTXOKZ8,:0%!A-\[
MI.+ZS#RD^=O")X;T6Q XMZ[G@>X/Y $SPBHJ\M)BEFG^9NWO'M-WK]/\771S
MY+NSCF:.05&ES"R(E&W\WV+*\[P&L.#CX\$!?"^>%A#,1*Z+MT7714<(%#\0
M2V_'Z2TJ:;V#G.U\1%[0/WD(X@D:"$'"(DDEP)].[KBPW1!CTCK]ON!]$%Y@
MM,+U0]<N\7M\[\%UL(!@*>U<4;+C;.$+)Y^/+R2I&1^GK&+"8;;(KU4^E,/6
M D+6BM4&'FG>7> H=RLWRJEI2=\QRJ?YNO#'M(81#EH@KP'X\U#>@87U7H54
M,1%>;5$9Q%<#@5_IA>Y66Q4HV[X+@1/)JUAS[M<7H3L<>5R68U-?RK];?BT,
M8J$_!K=14:I7:LYHC/<H3;ILG'Z,4Q6?Y-?D=]?!*SV7"XM&PDNK$1Z?_I&O
MME1\./W<R]+OJ:^-R/LZ2448,1&]@Y5\DPY'ORF]-O$8]YWT(1IW^GDG]XC^
M/4> _E%-Z?1Y3HZ^YO[63K-F<RL+;D9OT@$DGU!7YCI)[:WFSA9H,+6=)#6
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
MD6QF6Z_(>D[5]LU.76O%?0H@S%9?.T 4'-6&+RR>XS]GX('9UC5?ST?[_:B
MR/D(BXS4>Z73_E+"O6&1>\/3+E.7;OBUQ-,S,7;#Y)_F&#0@J@J(JJ?KSQ#1
ME)G*FON:'X^C>X=O^-%3@YX,E*H$I?IQI1-_E"FXY-GUQA"*O>>W/A?AP!WE
MRDJ5#-(PG4>$9!M\K)_*E"W"MJKK71RA80:S:40&(VLO6DP], PR5N6H*"]*
M;)9XA5R@A:"T>\4^?369,2IH [==Q,(>L)!W^H+S54;%D\3$6;3?Z_&(G_<Z
M0J M'S^4?OZQL[X\I"XIW,Y@UF!V)44K W #\(J+#T^S+QK,&LS6SB8RBX'4
M -P O,(6WL_'%PJG24)B($:!@,W2\9WS:,!K7G&%BKB+P(GMZ%RH.JL9>";C
MGR\DJ7T94OLV#EV?A^&5)#XLY#^6S[5AMS.!^.WQ16>=09R.WX"X?B!>4<@:
M$"T.1-,-7^8X-\=YU4U:#X'8'.?F.*\OB%<4L@9$SZK8!+$?B?&7XTY=\8(L
M+L'*;SSH"S8:N+8N/Z8&^.JX8R2\1QZ.!A*&2Y2:/S[Y;L0=FEDL'MSIBH Y
M]3YM'H *2DGWC-JPE)GD;8.?*N&G>ORGZ.TR!]&B@+"L8$ZSHL^PHL_:6$^M
MZ*>K%5_13U=KMD?-BJ[*'M6&HHY-0P\ON<W=&];U>#YPY'H@.#^FO[E8D<S>
MX\"WX6G!,%T74WK?CM]RWQX,F?B:-R1-FYWYF$9E<91_ I',;Z8?2\F\KRJS
M>4C%7"4,5GW-*ZY-3NGI;+B8X6++/F ?,G2L$@:KON85MVDHJ+03J,!?.UOM
MHV*=IX(?^BKNAOQ;#%-Q<L-7(6+W$=UA%N**SL\C!O#F&6;I1"\5P^VG8%BA
MJOH83FS!H\ _N>/"=D,>]%:GI- *8GT6&NZ)D']HQ<VF>Q7[KMQQGZ[>36R
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
M,:O_[*M_4N 0)XI]WA,?]C_\]R,O'I]_>[HZ5+2"(M.>-(&6T00L_^^KDRE
M409?^HWYQK90!T6JGU.DK#-0C&LWXIHN%): LRGHHSNV[ $'<0]KMEJN7(],
M%*(;6LRZ!3UPZZL?W,+7.0MAH1RX$,9H*6*AY?">Z\L@1:R! Y+>GE[9%!&X
MR-NUFZB_$<HJ66'"F)0/<OH,D_0'SM&5FJ)3FJ%R5GIP<78RW'?N/OVS/S>S
M_Q0"@&\&T\QC2>Y]S99E';:='T3PR[?8118*G+.'B0""\F?"<I:Z@W%9R;\H
MYR1EL"NV]XYR>^_/P(O]B G*;!!3$G3_/3@Z^-P[N_OO?^?GF"Y\V.RURI ]
M;:_=#C@%.!8VW$^MGZT!G&6XRQR+>5ZRU6"'=;GZ'5Z5WVVY798Y[+3@BCL/
M+V-FU^:& Y?]/MT[$MSFY&!IM2W*:0^MG^"%(!];86P/K' 08*B_):MTPC,L
M*M)\"_1.< AZ6-'^,QS/OF/]U)9CZX*4#=>[_W!,.8 'Z%YX"LE0+Z(BBD0%
M4<G"R#IJ6@X;AY,Y3N]S>U"EX,L,/]3N(A9-RY5O^K_'=R>G[B!VB_E.NHA
M\AY+OFAN6[:<3F(W#VQ=$%&M)'&Q9MMA/78QHAP /G2C"+8$]P#H(O Q*]<;
M6_R&B[%UBEYM9I.?_QV+F$RPRVZC+L^\ _?/* BCC!I#6R<KZ%[R?NPQX@I7
M6]?63SC7!Z_;.^WM1!)V*7=GA+D[UGRYP.9&D0U(XA/*DUW.PY\G]W QVR.9
M')P;M57*]_".'7W]3^^_HP]?Y[8URS]OMF8ER;Y'F'7<T/8"K&"+Z'<X'#!4
MWIM0*/+2ZVG$AZ4;Z0\M!".:&"F8L..YZ\M#[=:%,QHOPW9-[FC0WL0-TN5A
MI%Y9"'>P4)&%P[S/,<Q!*J\NL8.1".[&>*J[OC13(2&A[M@59G(@I"@@> \(
M\FV.[[E@(K).3T_U?M_<> _OL+! (KZ2^6,+T.X[5 Z&B(3A);=L&_&P&NB=
M<K"0&<0#"KG%;!L.%@D"PC/BL?17@*>_57(!X6"%0SB4X$-"RR&;&W8P'"%.
M""X6@ XGI&_U17 ;#2QU=1N&Q(D\C=S #Q%TB.]V\_4T(NERZ[6^;>(&=;V!
M*A?=,4&@ID"_"7>ANG<*K?I.;1AJM;M;;2TM9T7D^BFG*QY&,3-M>_/U[GY
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
M2'^ _83U"J7:L;??.#AL6N&W;:L7;6/X?XQ&&%F!!<U@$>@C3%C' Y P^P%
MW/-</T#++QF"J)0$\[^*>!398XN"T,D:^"[PT29VG-F-VM0K+VD;+T'QA_WM
MUIX%,^+17D$OX>D%CH[92DFCKZF7DH&4HZ\0B[O (+= 'H_I]!_P(8K"8?*Q
MZXM.F'Q*5KT>"5*ER,\8A-I@&L)C.&C8)?1.:^2.X!MQF.C(UHAC7@./AXWD
M0PT+]H4TLI+%Q?7E.\@* RH4C 4(( 4:J KDZV#[<G] BF\/97</UE=9CMPA
M)N' 0$0PLL8H$FOSGC()W7!9?0H4_9 V/6BIH)X"AW-XA*P$UQA+)?@AFM5
MLQ9%,Q/9>%R'B"/5&3,\E)9/@;HP7%2_;^'UH-@&MQB!?L;\X!@&G6-^]C86
MTPE=QT46*V=7%M)":R*:%84L"A%BY@5,>LRUL2X0JV$^*CC]5V!$R&'.[2A
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
M0UQ?-'U1SIHN$V2=_7UUHK.L?#)TJ+2L\; ;>!:BIMU\_?[JE/YJO98!!KT
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
MK1K# C!:S(#VX@?1KR9Y0WC/3XZC%0?1;D_LPB\FLHK!<$P?R =&2)><2HN
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
MX8$Z#EQSQZ2QO@[Q\U0)8!?V@Z?RY1Q?*F7VC:<\UPHKUPT\QS#DQ]C-NIS
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
M)U-0^2G[<SG&.:ILYS)OPIIVUPF ^4,"8+0)@-E# N!!U5!5<\LZ>&'K*-D
M1Q\MHE,.U<8]<5-:P /J@$@[L6PRX/J&0C2.I<30.ZF;Y-_8HJXZIA3"Q=06
M>\^]%=]Q*JZ 1A$\SYUY/;IM@O!\:[VC@7 FW3V/GN?>9N;=">(38.A3+]QH
M ]+HK_@<-TDG\&AX3O:=;Y]./ 8NT2WLA6SHK)<[7)M[!^H.UBTOOM)UE^9
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
MD74?F;I+I:$G\H+"BA8/&C.&W>3SEL,WT0Z.6B"LL0)M/L\-F,,5D \=<+@
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
M76U'&7%<C>$H:)X+5]P10UTV:^_#\15SP#'+%\II4UQK(BM"JX\7L_$8?<6
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
MVGV!!;'$$?4L)7S->HN(;+4"KE'P5RNPU;Y<$+E9OQ[>G_5B6:VPYFJ7SQL
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
M\,T=N4,C\(,?EZ1H/52!1HW10WN82)35DKZI\PVY:$]^LWPN5^;%0KK2G-/
M*(5#P&.WC!))C[$#>^S'9L9QNE?"/K7E0RO+)+<V"M<(O(<R_)-?>=)X7-Z1
ML'8K\)V?@*6O"WAA\R[@L:32DZ?<>?-*4CNC7#J[@,\7LM'FU@./%H5#M##6
M_5ZAFV3TVST;JSH,T]B_78XY$STG\-E<X;#O47N-AX!5U!@]!*SV3C9%6J8/
MDBB7._0!CYIOBH?XU7[P310N<^),LCSU-)Y6X)U'W>AVOIZ;REX<3AXZ@1_$
MQ<8"^-!E.6J,IJIK3"HP>G!7HL;HP5V)&J.'7/YHRI!C;?4<]]'?O'[0);#W
M!"%[Z 2>"O+8S!?:A[T/=XC*2?8"W_GAXZ$-^*MQH-*.XE6-A]*A\^^?W6@R
MZ8.UC"CPXJ'K['X*@U1%9/Z874E55"?UNY(&$1UMAZ&#0-Y;UD]5L"SUN[*W
MK!_%$6GB?![>"#R?4"/PBX>1_,,J78HOV:<?[?UN!"[.V8-UG[\ICV8HURB&
M QC]P,V\-?)>X<+B7N$7\28X7XT&O_^]&%A"2UNU5_CV6$NJG7B\*<]BAL_F
M\WQF]<3(N(@IY1PRKZ?<7A!:?&WG8LO09H1Y(,H#46Y.E+&W-B^7LGPA]XH;
MN1ZH-#G1&6V9? EG!O/9PBONN_\'$.?NVJPGT-=M3IOU8C'/%[,)TFV";=;_
M )+=&XJ-))2:YT4A@R-,#F+T0)/;TV0\+=\+0**EW(%$#R2Z.8EN3'U%OBCD
M^5QQMP$D/S3]-\4 _'U\],\@^(#WG"C EK74/K&X!GGF;HV^I//L"YYK$E/M
M?.#ZDME5 0J\5)@$3":(QC#0.E)?U8;OEST[L P$968=@RVA/K&- 87<_\*C
M6?I=O&MI$G)\U#!L0HN&JH9.CVS07.0N55W29572.#_&:YU&MFIWKV+?%X#Q
M?TY.8#%$4]YS-U(7^+Y)?CM$E^'&3.8#1V,*\ SNY,0388KZM/KIUM2F%:A8
MH.0,^Z5I TE!?J<\B)\!.MG[//D.&=A>&E@ B_?7!^Y95>P>+E#X*V3%>*(S
MYSP%B"J40<,/EAAA3;SNS<?+DR#J/*1]X%K# 4!0,:6V*G_@&B#Q&&(;!J(P
M'[SI;^\N_&7,\AZ[__,W8#H,Z2:1'D_:!&0;/'M -RW(+ S'/NT%*&I,!8/)
MIP>!0F#9;J>!@E,J6?YINP_#XZ:V]" (A3>>;KFL7WROG=4OCH^:U_6[5NVZ
MT>1JC=;%;:."'RIU'CY63_]IF]S?@(/&=>NBR;6NN2I<>%VOG5=:%^?<9:U1
M:51KE3K7;,$75Q>-5M.[8^9@CY-TQ1WUV_[X:A#\]NZT>0JK17%A6N\B75MB
MY,W,CX;3A[ODE<_>B25+ Y1B)I[83YI=9XZEZL2RSN$B4QVX#9C/)$O%*#*8
M5+ 7-"&@!6\ZT\!&H]+$.Q<M390/K_^PAU&E+1:<XGWA[.>;2&T93'Q0.\.0
M/7G/66#I:2> %&N%MU#J$8%TZ#HXH\,%5Q*DHW:$^W_*33Q+4:V!)L%S8/O)
MFX"TH)N0J3R,GLMF)B.6FVTM\^;C6:59:W+7E]S-[443F)V*BNEL'/<_[30Q
M0+3VKDLC[I>JKA!\J'":5_4HE]+J ;T<'\E!B['C6XR6;S%BRVSP> AG]P@G
MR;+AX)= <)<:>5'12&H:FENV3AT>76+Y/* "=/F4>XOW8>I51OB P4M)'])/
MXH=W/*?"HY[!O]*&)\:S3I3C(\MI6ZJB2J8*J_%?<4G,OD?<7-U63CD>[!;=
MJ/9(?^+]^$+W9=[OX[>%0(S/"OQPI@+N+.OXJ'X#WS:]S_3!\,9JDSLG'6*:
M@*NJ80[P.\EV3$ 8@^3B9]5])*JKFJ[CDSDL5\*3!08?_H+KGF27LC"1N^-A
M87C=J:M]%3:GKH*YIKD9&H#$:]/]X48R;1W\TYXZN'YV__"S=S#_0QF$IX!8
MIGURXM_"TCW8T=W)R84.SW@B;II679-!9,)W5T0'_U3R$D#,6J,MY&O"K3 >
M%C\&G5;N *2<X;W#[V+ F1*6"2UQOB-"PGK9^JNL?)W4#[>D["03\.!O'!-6
M7YA[S/[7&%&JSETT;K@ 2#Q7KU>/CSPRG_K5HW9*9OB;"SB]BPO>Y/[@W7#*
M532-O??$VS@WB\>B#[/'TQ LKB<]$:Y-B'Y\1#38 IW*#V< FSB6*'#E*0=R
MAG-WBWN6J#@!SC%,>@-<?B4-.3'#<V*Y7,+5HKB@_BK*F 9YDA2)OKXG*:!G
M.&- 3(G! ()(U;@OCDZXK, ?'^$33@$78":*99X^R'LQ,*S15V55@W?"$@U8
M*VPC8J4JZ?"&R-WBE(4P=JF(:D!#L&.E@$1'^M,($@ANXL QY9YD48*09L1F
M+EZQ*98\L2F65A*;$[+#$Y3MLO.#5%J#6[6<,D$IECQ!"7]-"\J0M>Y4-.*[
M05AP4K=KDB[*$)]V!N";4 KZSS0!94-\!<!:6V6&#(;45,45.G0&##, Q'#J
M4(AZ<E*'EVL7()[LX0Q]W!#3J841B5MRZU+'S03@RRA@';C7WN5Y$&]?5IWG
M15'@\_.3)4 IZ7"/2>@!^/'1 *B7LHE%)8-)^I**21LS4J&R9U(AB+]ZU=WQ
M<7+M+5L@OCTX=<@Z&P9_F7SJG8<6^ILG:1XK5[KJ_+Q_UM37)&E"\>?^'(:(
M:,10=E,+S3.^@K()W/0)9XO:(4C%85X7LYL,QT8>/CY2Z7,,DY:P%#]88?L7
M(@Y5WWO#U\UM*>::72!LEGJ#QT<=V"S7%V3%&$@E"K77]&?)5%P++"/PL^#H
MK,\#\W]4_Q</]%LB:<#>] W3#'T1LW<D^-Z1L!)#,U@#O$ROOY7T+F'7TL]7
M()WZ3M\W [ZTSV_/"E>7!25ES)D1?'])F&'.:5S TA\F5AX--V;F-H_^"\^^
MDO:G8Z(8Z25(,9_;G[)/M9IQ]?G7JZ>8X,JCH1A1F&M9_,6#Z_.(8G L>8Z/
MI(EH%&>-,0V6XY0X\P2=R >%%[JX)D$T3[C?+.JSE@8XN*2[C(T>'WFQ R]>
M-Q&95,@3T8P!$I'N=("T@-[HE0#\([$Y:T!P/X$@9'!H\5P7 YVJW.,LS7BF
MFTZ>)!H&0;8$ZGJ&C3=/N6L=37Y#<62;YSY?5%K-RK=;0&TQ]X$'.\!R7X#J
M&7P=!W0V*$_K6>WWD98'AJ&Q: W@ M\([$F!APMYKCVD;\<+YP$ IHL&ES#S
MFGZ#HM6D*=+@?/?4+CSR^ AHE,9A<-74Y^(T ^28R0UH128^S@84L[@1 M&F
M,1@'8TGTU2! NO@5F! 83(5WH"5/WX*_*\1BWP?>@\_T@6+7@4, "T8GP<"W
MC!%W7VE=W 8PQTTCCCT%N9&83PP%\$C5--4N^R1+.NP9H..W(\F.AA PLPZ/
M6<PG0S4#Z#T^PHVP*.+8DS7# B)Q"*XL@&<J,R2WY)5SN3\$%G<AUF04"P R
M@@1G!2C.??$)2!?,C3H^&M.=8X- '[F[#D)5 S+1AI*%SA3:;6W5P"_Z(-.Y
MM[@DD$8=!,GT8MT *%"3&SMLW52L<4R=$;5D8C30EDX <!ONMX)@*@&C46;S
M3^"5FM%%\#A@41T>+ZL*S]5/&%2J#/8OO 9W 9Y+=0'+@490!B8P'UB-LF&:
MAH7HH@0/#V-6K8O0@3K S\^JW?.IA:#Q2YP^[[,ES]!C,S[O,V\2!(N#;<B(
MY<*!ZZ/8=]!Z!5SXZ\3]U7NT&+6#&1R :<0C$E,?+GK"Q\FF,>"&F+M =PSV
MABW+>Q@C"% LE#1[!GR/.6><)CFZ KI' ;(UN\RS0#+!DU9 C>E+"D8( ]!,
M*N"1N-X#0,XIZI/*4#1-.\#$SP8'^M(TX-'AY,=XNVNJ+@< %B7;I7/_3DKJ
M=(,[=(D'Q;5CQ05>(\V_\22F;H"N@L>;*%WA.^ ;0Y>>5-.!)U%%U4%.T(9@
M/ -8\(F1I7=H=_VM=GXBEEV>Y[D>-7$L( GF5DJ8=40L8$M)X7IH!O6 Y('L
MD,:08/ &J=,A,MY @-*,ONH*K['EXXDQB=:.,\%HF)KBOLIE;<"3^P"94\!(
M ZJD9PQX!NXMNR^YHE*6J%BVX=W'1U;/ ''71>PQ3:1PS!X%7E(((!?DS]A!
M[0+.3)TZIR;I.II[Y&"8S,!&^8-?4'5)E2<5@_AF'0./P,R(3A#;LDV7TG8#
M=*##QTN&A;B:P##=9=*3U< 9A[N%K@9@?*TXKM*FE@E[AW>=NU=C9*AX3O*H
M ZHX"4&!SZB9P=2E9@W^#LH3-()ET1-0JNTU< ( ?I0G?=00^&B-Z%W86"IJ
M0?YB_T;WK1;QS*$D#->$.&E>+B)X$^2%AE0^+LQ+S![R$B/.2RRD)R^1.IT>
MF:0DB>7OB32NCS%D=36!(JBJT>T*RR.A:?0:V"S$6B63:[4'/(QN!^7'<V5(
MFMG</J=O94X![703 @OCQBOCO*7YAR$3*9DLR2K_,+KH:K]^]CKG>>O17^Y4
M:E:S]JE1NZQ5*XT65ZE6K^\:K5KC$W=S7:]5:Q?-B;2KZ%,0]T> IW,I*Z=J
M^5D9Z".!(\4R+-!MQ\,#ZF[)AF5S;4P:Y#F04 06Q=Q8ZD$_JQ;:BS:AQA!-
M]S(5ZMR@&^6E?P%M@B]E@K6D#C1821?=>6I P@7P1&86HM%PIV/HD.5S@&DW
M& !!2ZZ9(8&11;TC YYOZJYSW=&(:S(-7.I'6T;# FU8&7@>K]B\B$'F5B6K
M5]$5_ _6+SU)&A(*%2S#.2(W5PR(W)7N?Q@)G?97HU,8G!7$6"1NW-OQ5GJ'
MZ)^6KH4"2-?:[Z<?O:Q,NODW'Q$/E%#I'P&,^#NI'J3GGBUE(I@KNUD1%G7<
M,)P)4DM382.5P(&DY>>-**[@0Q=-A86 !*6^FI=WT,?8I.L*@2C$Z*:$HL\D
MA.L#)#V+N5V$'I&";]X9IZ2 #&R#*8^41,:4=,KY1#;]$PU#>7%2#S3JC %8
M8X6@ZH!7FR6XOF9I&;_%BJ<].FC.X6*!>1X0F/-N 1G9E[+7EQVAHJKIE)'M
M<!F)%JADJ#_*K>'WSVW,YV,8\$(\5;0X@.Z;0,0'.;F_2YF0DQBR<Z68] LD
MGJQ)ED5H/$KU*/Q]($^S:Q@*//O9,!_1]AN81M=$<4B-.ND9Y22\5O(.IQRT
M! D[0D5![#Z>]Q^N8H :Q1VU;A5/B(+]1TP6PP2BPD?I!"-T@*D1M2N?,.8R
MF70LL7>Y!ZVFA2CDW;_ M$1YSJJB\34H2[N$/=X]=0"L@*0. (8+5-1.AV"?
MBXECP5.?V"TD=B_YABD;\C(@&.^C!S?PBT./5N!9;9SUZ!W*441Z)T,#,)#]
MQX&WZ L7"B##)?MK^I4 H(F&M/\K39<+; 2BNDTCK1V3KIX#I632\.@SX!T/
M(9AQ;N&I R@U1?,_'Q^]A8<3E1YNT),'IM+@(\L[9T<JG@# 4&H/8\,4 TA%
M;KZ6M\Q 60A-;AH?4_@O, UL(88?X0?WX8"09D\=#+R+QD"RE7!M5=/86[Q(
M+U.AP9PH>I;D$.XM+3(\F4T/#28>W;*+49U4,9$*8+P''5QUGW[QXO8&J" Q
M@_'0DE[<B9/S"S!NV%G+M>GVM)UJN^FM$(SPS^[ZO-R0YC>@5<'4<M^S?FZ(
M"R$[C_%@9(:"!R7/^7!R'J <0+HL662#Q:_9A'ON6K?/-,T5\GRN/+=5QP>:
ML49//$3QPRP1%"(C@O"LH<V)H'^OE^MVKPTN6IJ(8#8Y* DBR!3Y<F9N2M"[
M4RY4GF#DA65)NC)[6H;(KM!GLMO"H]NYXB38L1>5Q77G$]X%JW6WWFK"_3%*
MC3-!DOKZX-NOLZ)/,)[6HJ#0M7O 8*F<LHPHYJ]C?P2 R OY$E\HSLTA7"8"
MLNMN7-2<WGWJC,Z-_G>SFMW1QNV$:7'C1#Y?FMOM\]W!Q]W&Q[TQ25]U^M8M
MM>C0B*Y@!A@&?2\-\]QPVG;'T=Q3">N"'0D#^J^(W3,43.-Q7=TIISB8?AO9
M.QY&3XW/YP5K])+]5$RG%RW/C30.6\^/]V?GW\O:FX\^?F@*CH<A[W#HX$;O
M[U(FW&B: 48=0)TE5OI;JOP_>V_>FSK2[8W^'RG?P7>_IZ]V2\Y^F(?NYVR)
M,2$A@0 9KZZ0P0:<&)O8. 0^_5NKJCR!#09LAFQTGM.=3NQR#:O6O'[+.%*S
MI'XR$&0P?9#]B?-.C.P+#4?MD3%'$[.IWU"'J DX G^95,&HYOT"'05'C,:B
MK./0##)T1&%"S"&<4#8498'DK2!;L(=F.&6MR8"*8TX1V]MX"D8*(TV=)JF:
M9"PSCQ37AHS0RD?(S@2?I[5P;@BC.Y,:+8\LUJY@X4:"#TY1(:EX4RM9!B?P
MT(0<)'8THM@*'.36VN*H75/35;"#5$+;8>3[=)$6)XXO)HH*N8&&G\(6)0-+
M%1GT:,XGX;*=<(%<IO&T+D',7N8A8H*SA)8[5+,.V>%OB/8L^J)++XGA=)3L
M'*=HX-U%0[H]D[]>KI[JS6KS"NETQHZPC+D7+%.%O#7(&M4H],28D_LXHPM,
ML3]%8@1'P>5FY9]F=R#PNB34>D01J?6*PDB%Q'Y<4XLA']TI.)MI"T;ISSJC
MM&=)_JDZ?7DIO=:21TG$6/SU%(G6&7"8^+ X04N&=#3LRS7=M[RQ%8 >H1DR
M98@WBE R)X, P^5,R+8>0"(CS@/XYQN3\;Z6XL@:HK/=<F5.7I9'O$RJ]V9/
MCY-XY!T2DPI7I>)#M02P4+>EUE6M"#\52_5&J5!Q!8BB6V3E0=KS'N?S(C>%
MA8.<QG\83A\K9NIB&A(EER14TC=5@J\*K_XPFW:M/0V7I$N7KEET-CASL;.8
M/^K_<W2)R>1?(=+V$H#AP%80._8%).(AK\#13"XDNO0[7I K!7-"'T-M&DQF
MP*D\A+&6GMT^INF#I/8Q+1<OM:&^V)45HL \: */%/$<%LP-))=7=)CSU.#S
M4\CX7NPSAP_2?,KP?R82;U=556V-\A:RA7UR5&N@555.S>&'?^/&O;F6VY3L
MJJ*/7?KQ.Q[YBYQV4>A*)'^((FPMF&(N/4J_Z<4MZZJ,@^)D-J0HZ M'R0_N
MFIQN[ZK;:YXF>K),C]&XP-/H^_WP0]??/W9]@;UGM?8=CIWN\"(!WMH3-LB,
M!(-,#NZV',DE+NSO$M]R77"+JE/[D\8M_DB^?%7&4YE+O.WX%B^9UND:!T&"
MM5Y/[ JG^QO(_4WM[_Z2<URXN6(K,1KS&A>I)'=\<UTG=+JS09!=7N%.5_1H
M1*SQ.3@UXUHF!:G^="5\9(:]'5U+BL-E3>)T%0.YBKJ(<=XM0Y9 P)#BS(.[
M#4=R29/[NZ3T/-%S%=M!&O?V,:Y)MZ7B6W[G]W;9O-:^RM'357:)8JJ<* GJ
MP5V.([FSV;W=67IPQATMCF[DRBC=5(?9W=Y1QSQ.CN(@B"RGHXU5.J)T<@P?
MH6/8=GK&Y;Q.:[ENC./*M>Z.[=&%R:Q]0YN IM8?C"\ F8*<-:09,DEF*G"J
M]@=?TSK:GY.ZN_$5+>[OBM*3,Z[GP_VEK%QV]>%@5_JMU4%^O(5"ZW4UH^D_
M_FZVA.Y QN44!W</3M=SU?6T#F_!L]MJW%XVU/2P,]NU9]=S4L%=V\@??VW-
MW&XRFY-7Z:BC,^9INCF5*F\WT:?\]7.EONN;O&1:@=UE2<"X1X(Z_(-OLU$K
M3R;C+&4RJH_G6DT<W'4ZDEN>VYL?RCCDAOUXT:G:#M6,_V0>N[.^6I0^=I50
M07U4ON<8G"P_F<=-I3>><$:VX^F^!WK?\WN[[\:QNE_Q]/0^\\&_1R.-W=[P
M9;,*[%+'#^I.S\&J;U&3L9]*DM/$PZ]\H2#Q+A70MA+.7+H]:TZ42_DR\]+K
M<T=9C+EM$X/$J8E!P$T,TJ<F!L>-:("L8TY408[6U**HC12-DVJ]JB+WJ^(G
MDIFXWGDYND'&#A>[P7#MV6@PD-_TV\_&M'N4?$EP!SHHM&?/TVKZ0U,ZR9OT
MC]_6Y@"N"&S*!=Z5/PK2X"B74I'/S^:;!Y1SS3Q34'@,T(+5WI8R0K<RGHJP
M#*(&VF[*0K? BC=II6RHWK0'%0-G_C/7+,#+?SOQ9 C.C88;$B)5]1/:SQ$4
M I:"]B'YPC(=?8P;'TFDNRF2""R@]=!/F]GO^/.2B:V!GB&Q*0)LBIL.&H,#
MJH]H42S1X:4IQI<="#+ =)^?X<YUN(]4=P"=7S&8;%=4N_I0&\->P2]XV"#2
M=:G+J>H4 RD,"3 /N@@44P$WFT(KZ!!H!0"Y05*#8-^:KV$\7 Q.;FX'?1\W
MD^0,Z,>YR7>FT+50TCG<AX3VHX+^DH**\=PPF ]4ZNFX+9R.IJQAY""!HI;W
M<(\XB@:$_BRHTM3"@_C%5,A? &>GBSN[TY&<+P-J$KP 7:HL='7H9^E<('1F
MM$]_B X,C49Z2UL["KVIK8<,E%@[-@6&^B43@V,F_>Z,69CXM'.["VTT!%[#
M\^JAT0T0XAR^ .@Y"2,KC;%)1[M\H<V2>/2@.K6#%DFD^?7YF:9W!Q8 %#Y3
M-,L)_$-6["LU%L$3K%P,&BQ "TYH42AHH+CP)PBC;01^60%\9+F P:F0%%8Y
M62, A("9B/^3NL^62_V"3>IO/&9[)B8?$0>\?&ODCA3_KN<N^XOM632=UIJU
M:2U:S"#UFFP18^S12=@?[%((Y(\N8P*&%D/TR.::%P(GQCV!?C5_,3S8<"H1
M5IZO OR\<PR3!3N:,=.!"YS,H5\AU<,^^MBZ3>9@]$$Z"P.&7!5&BHK%G,<*
MV/GYX[["5"92(6H 'D&;5XGV4H<Y$G C)"JPV*=P1DCV"[@OIH%O3[,\&6T@
M(*D'+4-^,0::,\A;BJ!.%D4Y!A9@QBI-&"4#R=[XXOD9^20TS^5$#)-NDQG@
MP4/;9=LJC@?J&=*V(R(>4\%M8M' FGTSYT[&M3&5T?\7))O14MUZ8_'\V?DS
MPLJ;YSFQ]D-!C\*.4,N5-[_M1"K$K5B0/J@,!>8GM+ ER/48]Q#I,N@WI DJ
MT?&@T8$J("U.0QJ4\1KM<>5HRV5;LS4^@>E?'.$["^:C7 H5.DA--^YIGX,F
MS]@(4#2S=0&^-HKS%H(JCJ:E8 *S.J#9>IXA 6YG<?,HXI:63:CC_(S2I=BC
M'2[0<W-WED)DNM.G]3IZ?$J;%B%EW!R,,AU!YHW+C/E T$=)_@EGY;>;XM$I
MB2M@\9=KAF7_S046U,':FW9YGXI_/:0&VZJ#.SRFGWU/$&15+D^>U:NAD$W^
M^&V(O@8RSY"1!!?MI <&NI1_D<K1?>_CGMO@8E?4?P 3&,<=@U40#2V0-(L<
M8U9*3G>D(C-7%:GQR\#?^U/,V2;0K,:C-3W\O8,,7:&O<CSFKR-%FD*/%Q;D
M=D]7L>0&8:YC%P?B?7<*X!%'LR?!>V!+<5 (00]%)XQTR4_A0AL+(V:(#EK"
M"K9!-:K%$Z@9 :(/'L8:\3_,S^C?9D/[KD/_[U+.^A-)1^R:Q+\T\**1W(UY
MO6GW?RD=M$7XKS".I0P:0[/,S_C?[O#8-L4!J+\KH&<3?V.$</-[YV>N3YJM
MH5QGPN)K\3/YMWU[X*O&KF&0\9_83OE[R3A@UVCH)ZTG"ORO\S-[/ZT!OEU2
MCS17 J>7^Q@4T1SOB"*1E?0 YYNNP +HQB#D\$E;(UFBFHP1V9!IDFN/G9:0
MIS0"75N$#R+;Y)TX.#5B"=+OJ%9_*:/CHLKH([0V1$F(5-2I.1%.168DLG^0
M^H<')_H[F15H:>5?M5_Y7^2[V L*;;E8<D#V71$D[,S$S6T)D#JF6,VU214<
MZB=MDH5IG6PI\>H!/"YBDL# L,N3(PCR/$% 1UHDVH^A"%Q-(TT[SL]PFRS7
M@SAQNP-;2A,(UT$^IBT,?QF1FTQ)'EW=L:[*]N;.R"2Q?,;_ @VK.!C,@G,8
MMQS !CJ0)'Y>T""@+&H#ZJ,P',N\=:WH1_9"*M%O12@[T:B* N%P<'"8L6ND
MCP+I!F3J2+@5%?1[0']0Q8X^5E3:+F'$33&G >&$^"XR"<<&KW$C2\*K(5K1
M ?<2#L7@-WD=)-+Y&4[\@#X1N+,";:6 8U]VLQ:Q.5F 'H3J.P1U9,ICY_DH
MIF(1"-5JP^!HZ<@+1) ,'&H =ND8@@[:E$N$O:LB;GGHI3U8]V0HD'@?W1SX
M+3:D89$0L8/8E&ATV;!YEC3!L</?]A*MD3F4/&4.!9PYE#EE#AVGCPAWDA@K
MW?>*IND"7Y%+U+F(U,TF;;FVW$%D2VM><Z#V+/?Q_O;ZU/A\^#K2>.' W544
M;<_BW7SVJOS646L=R$Y&RV7(SH!D,?8&<WUC=T[.HX-=BMT#8*D=RG"HP/AP
MMJ)YMH+];#6CX2&2S#CQ ONU+1479V10C8/D:W0X,)RP*8B,1=P"%9O61K[*
MBGDH1$7BL0^+&O3D+_9X ,W#49"6IHV@=16._I'HG?&2,7-5@ 096)MF*"8S
MT.UP>KV5TD&R41QO@G5JQA^_LYT7O@L?SAR=#K:8&Z0_-;3'7".7T^<([9EV
M68JEKY78X^UQII6+[BPYV9Y)G4JO-AD\7[^^4Y9\06Z;?6_VS(5C"= R=V*F
M[8\_[W"1#M^MR;XPTS2/W&1].$5"DAAM@%@7I0W3W (#T6?2:#J:P4FC=KHZ
M/\,,.X8,$<R.G30G_F89G#**7OW[%_, +!<S4RMESV$5FGX4S.3IB_.IIN9B
M;>N!MHN+*V>1Y3NF.8TVX:2H/0$CT^.,$-*KD-JU'SKZ_-AD]H80,#HL3CAU
M/QS_C[@_(25)6:2&)'E?A?QFT"/@4*ER,2*N<Z0)6%1B-4;#9C)TE%,D4#[P
MPQ>@O, #.$;RRT'VYKV;URS %:/9"_I *T(/F?1GGPX#I8,T_1=(D%Q;J@=9
MTY1UJ"M<7 M)HE6M;%]P2<&0O\[/FG!OB!Y#]3OB5%%Q!N^4:&G"EZ!V16UQ
MF_Y,^M^-+F2FDU1P-@E18I8K0]$Y9<C/$.W9Z[U:ETM"I]SK':4V]//-71U*
MM&>QRWHDUT?2*\7]^%W#X1S'OC!D8T)4B/:>>W.4S!H?%9'C"UE5JF $,0W7
M.VMP6?330KX89GZX ,(>W>Q"E <L51(FI":HW!5'DL$-:6;8^9E'>A<I85G,
M=)2Q9YWD'6K4.VT4CSC:</(B^A%*#HS@HI'P"6O#;!9*7M!:J1E\?@8JR7CJ
M<,6;)O*R/$FB"ZHBD1H23JNUI:'U:*JW9]+=R;#=AIF7.!409+6ZH&)IZY^'
MKWBS/;MY^.A*/?WMMOI^G*S[W9-UW]2:-Y/+0>VE(D(Y&R9DM \,WHB3'_%@
MEY)':FP7L2I*NJ"R$N/,8$,Z\-W.%+&_3Y&WLFT9#M+B<70)L3^[PX]R07@'
M]-V) #HS\&Z:86^IO<9;1*=5]#&4])&. #0]B"C0OYBB*.%YN$R3PU5P4E<G
MV?Q]-$UP'9(R 2.A18'J-,BQYV$@6V:1754V]&^22:>"M:']PJ8ZS!*8.3)%
M@-^3";-X>W#>.TE=)P5TD++L6!?HZ7B?B =U[J-.U=_^Z46QQM-=L(DL:Q]<
M"O&(,-,LDX&L_E/ 1H_KHLB+.'4"9!S:M OC);JGV!ARG8&5<+%82V"<$-UZ
M8R4+Q+%("]@%8N1::Y!\C1XO"ET,RG)^%H^R#'!VO'7HATC@PN\[R+0'3:CU
M2D9]Y!(1YGRP/;OM:)U822D4Y<01Y4M+GF)*^Q32=X^Q\4LU^>/W [F"YG)W
M)J9(F/LDD;P]/T@K'G&JR2\<-4.N%5-8ZY<AL(-4;N(+=3<67*P**FP>9%S9
MWAS3;&O$&Q$O.C]#DT:LR=#TA]R[Y<0A')M#''[H<-Y0Z6,67P&'6RA(QPJ[
MK>2-!JL,!]=\K=3YF>O"812O#YG)3K9:.$?MLU4:9DC:G%O=-2^B!:FTUGH\
M0#)O;@<F^#&HLS:73=['8E50.4N\617K(9LIW^F2Q9._$DD+P2V(Q9A<CZ3"
M.C$'3'(F%C @1- X,=<=&&Y-)(IQM27U^EM9O%@!L^A#%6R^5,:AV3ERVI 6
M.O?2IV@@O$&H U+=">J!4;)/[EGHD=P3):U(SS63:Q$M@2>:,D^#R^A$SMKX
MJ'705,%U$AUP*_,)1P4A&HWB;!#!T%<4?B)*$B42I#/V1:1K6Q F% _#CC/"
M25--1']RBZFQMN&AO&!",$9 !^5I#JFA^(ZY+Q/+9*%J 2VYITM0TOQ)LAY6
M8Z7,+<$<VP0K 3F!?4'TFAF9E6!<N#TF6A"&[/F9@3A"2ZEQ<B<HWW2V=J&T
ML,LPD@P)JM_CHJV1EYDZY64&G)>9/>5E'K<M64:<%-^)6J]L**0564./8E9#
MG)Z+&9D6F(N?]]NS2/XJ^Y@5DE*3#\3RI(+/ITD3L(C\.72W2'/MV66.JUV]
MU*\?7U/H2D' ^]' H#*WA['MS\E(/00C%0[J_(RD)H@:Z :B3  PB!..1F9H
M"2+8A,1$(N!CM!P"<GL,Q"[T,U)1>!,F >PMSC0/I\Q/R(/Y$L=D2+-^DAJV
M'%(UT A#J(/C^$^DB2$6INB:D<AI^-#,;UD#8\V:P1(&V<3V^LF.,)[@,@\R
M!K+'D01!W\+&)?F\'3@,HZ^<GSV:BL,8>IV('SI&<R%9#/1Y>P[1$!T8^L27
M.$3;:U<7E0ZN8@8Y*<HCG>HF2,E:>%*7%YZE-9C8B<BIR()%'$T5.P*N'+0^
M/A"1QJ1V!U-[C@; Z$C(<I8H)@G^MC$ '"%2"UGXDU6-TQ-5M(KQ1"'N:"@M
MPAFJZ%2LF1FJE<1I8\><64(A %#7$9;LU1&Z-BT]QZ[7S.L]:Z_"H?9XJD<_
M#@40WYSP7C(+MD&?M\T\MINI9U/I;%!S#WFR56 29'I1LS7!O:Z02E&29"^3
MPF6!<E%B>)%B>4"WH5:7C2.+]OC]@35V."[*/9&J*ZG&3%*M$-&F6'7S^#%$
MS&8*HEU("2)%"*%Y,$#(LO%?+(,Q.)$"].&X +CD!$ELP(TS@%1Q*P0'Q?\[
M]Y8HF_?%G H 1I&[]"^ND\63H=+99;ZD A6T&%Q5HB IP=%0MO40F0M5<) "
M0XI> 7-MS.& L42"V#U=DG %KYE.?+JWIWN[VWL;9XQT_8=%?=>Z 9H^HH$@
M1.F(+L?D*LB*0>842&-JP8C8T!$,)ZM-1W90O-OE]2![JVO$R2[=5]H\MF!P
MQ,T,O5DI'V@8S-)X8:1H(G:6NSF6S5^.N*GY&Q52SQW!2VK<: -$?'A<<'[+
M@@WDP*AE60!<!M _5?G"_GX81 3< 0URWT%Q6H#T)A@*<U]C9 Z'A@BU0N6,
MX3R!U!G3>_(]'-C?@C8-Q@)(ZP8A=GQ2B;86F=BI@;$1P_E91\!OC W>B&,C
MWX1&=E+V,!1)@"DG\X"_B'930-N\JD _ZRQ\\#E(>_8522&6,H[':MF=Y<_N
MI'#EI^SN'RZU9\7&M#,9YB+Y2N?';\?VG+)J#W8I!:2^<Z(,)1$RP2 C_2>$
M+X <XLPZ>-[L6[$RP<E6\D44-QB/I-D0I" ,Z$;EHE%Q"24/^.GS,QPEQ]4$
MV >-OO:)AQ)D]%NL(@X5\#:2# NC[T:WJZOP-\2V)1@<_\*]HL$6WL>1[#'T
MH.CC=%A=U@2)-L^@S1JZ!B6/[6H$P>.CEB0\35I2R(#8A=L]B/(G3!Q78-C3
M:-]TO@_/_D)&+7T5.#O>DZ[]TI!T MJY@LP/215H2('SBDTU>B20[%,.%U>,
M';N*]D.7X2-8S>Y*G#C4+!>N=29X';;1'=6PQKXA-<FQ2[2/"!%Q( 5IM #8
M-DT?0U-8G+GKI!"E303(CO >#>OV6&12/"A)%'J,IN@X-T!U%"$BRJ%_P!AJ
MX@DJ[]"64J$XF+;; Q1CNP-3L[T+I5D1]WQ!I-0AV?SX!C"@9:G @O 5,B&_
M1!GC<?.FOD](Q]3EC+ 2XGS$]V*6N[)SU:]6!,J,C!EVA>@!JK:*1YIM<JS5
M@_+O6"UG*P9PKM&Q102?W-@44CN&:X(Y39'1KZ9H&,1B\-_ #V;;0'@4+9ZV
M&K+6CP^&K,QAJ[BQ0FB=H/0%[.(BN:Q6%;SQFHHCC)!:1&="(3U[5C:2$74R
M%LJ2O0:]UT+M/]WA UM*50$IZ91:5D@1<.D1!6,A9>4R8S1]LP^#+M/N3X(I
M,9F^SD%9B0!?-K,NNYQ&] _KK]9UM"CD_*R*Y4T/_HXNEP*];T%[ -)TD;%&
M\;I,FT(87&-_I/:MR\])N5V+^UIN=<7M?10]7FG/(A5U4"R\O%R]B-_,QE+<
M;:Q\>Y9Y*PKI[O367KR(]F;W)M8WXH@[.=,*[?PQAL/";(=Z*VEZC6ZBUI#,
M%WO)Q92V$?_%&.BPMI3>Q>(,9Q:[D5!C:L?$;L(S(0#\)*\1JCH(T*E1*HET
ME9&B C0LJ:H@3QFY-B299$&U<>UKB(U)JTG@_)1)7O^"GPPF",DNM"6CB3:+
MV3A^ U9 /+;XJVBI@)VC^=\GFKE"@5C.SP29(Q8$>HUD']N-"NCX0K#%N2\:
MT;"W"R)E?[8Z :@^<=_$><P4J],CSL0![#L(A_#$?J4EHAC@?/6ZB!9-LKI@
M9N92'$@Q\"?G].U0=#3772,J.MX5*W/*?7<QU?%ZEX1S.+?L=&2264AWCO?,
M66&S?[% ]/P,S'_6F*HR$F6:\&W9\BRU#[!S0!+?!1P11=<7- [\60U7@4(9
M$;Q+G+>&>\-E2=@/@4^&P!G\D3K!4>JEGDUJ,=A7(L+0CK1(QE;,$@F0H;17
M;?1?&S^>Y\(&G;D9?B.LHP !8Y Q'L((F+EWB9L-DQ>.89GE(Z0&3:*=I9#U
M(V@4JQI=.PG?:!NLI47NYC>=!C2Z)]@6XPC[1&IW3R3-%=SO!7&5H&/A<%HH
M167BS H1J(V'*Z&CI:LDB,KDQF99,V-4-3OQTSK@FP'G%R"& PH)!$1&*NCB
MTI2<C27ZX 4 #3&9@&WF@+8YQPVLK]".=S0)8SR&6OX>;LJ+^SO83HXFL-J_
M J8E_@1%Y#)Q](F13(LJ,7<><5-3FA&04K!9YAT)KCXSRKL-<0:,F/A ^^A7
MLCWT9TE0RHAIDJ59.<94W*ECWLIQF\4<V=G!8K#10P>FEI ):K"D =Y\K>0N
MFN =4KE-^E1N$W"Y331RJK<Y;NN^H,A #X0O-$3MO8"5<_AI297-DK?:LTHD
MV9G>1P:7]?YQXA"-W$WY3'L6?9V\=*^KK_P[4N-@M<RM*=Q/UOQ!G)X[=#FQ
M.'%W*NQ--WK<S=O/$+9RR5,B-IVA3UA)(T9;T6Z7?!"WP76@*CAZ"!,Q;D#/
MSA4 *WIGW-,E\_.L+9Q!T8Z6!$7-"I/Y7BVD^3'6#'"O4Z0QH!DJ0\0_!/E3
M5!691#;M'5U$;$,KM%2$;-Z%H?!2*#VZ=!S*A>7(@'U*^]B@Z1K]Q) R2'@#
M&1%[,4"QI84V!/P)C#6T<U@5PM8D/:\)LOL&4X8HGBHN$0)=UFA$:;A)%C0G
M7&1##MDV$[26,0==TO['>;.SD9C_GI\E+$#0;'-8A1?X%O?5'HTBHTB["SPW
M@OZOW8:?HK$X^LF;9>:G(%MS7Z+6;AL-)5HP\SJ9N/%%[19K[>U9K9DHC9[>
M*I$(XJMC<0Q7Q=P*@$(RYDLVTGB?9<PY,\:DP?_XPQ G99669*W51=5M(WXL
M$4F60**K;2]9[ \&=TX;_^\/\6O\CZP/>67,"UWTJ/2#H3]H1*M":I" ?])E
MD7SWH5G\\3N:8K/1-)M-I TA:BS3X,[G9S]=Z, XB87C@MEJ4$I?AS W+H%K
MCT2^S8_"/OBE0^71'1] ?AD9SR\9&S35TZ:IF/)4>+WJF#3U_Y%)+:H&+EOP
M_WM1$?19\3- 8"1C++WM:^4^":QR5S9)[")FH[$Z8F0_?B>R7L3UU]\.9+$Y
M8#'3 F=^ J@8<['(DDJ!L:2(29F1P%G2FS:3*DI41L=Y3"PI8M)79)<L*<&F
MHW$V&O-D2>#'<"&$37E2B"<?)D_2*_+SH-ZLSO+) ^))F]#,7GB2)W7]]3<
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
M9<%V!13?><(.K#DMN#)9!_$8BS"ZM;BLPL2-6K%8$JDD<592][F(.\I:U]#
M:7(,@FLK;"HV4!RYK\!%@/6L)@S7V;I<7H@:$QP@0IX+<[6.QLXS[)UJC.)A
M :C-9)@.S"]S4-H-9[Z4USDI4R^V9L\"4C );M,/X/1%VV>L+G^2I'0YVY-S
M!QFT\*,]BR->K2\6Y&!\!R)]C7K:S*F>-NAZVNBIGO:DKBX$0^8;C]H*&(T.
MIV.5XP4(9M#X,/PGHPE=53"2;D336F-(WU!LF]-<,E+=!_K@0!S1%^P/8R2#
M^5EX#&MTTS#45ZR]PF]!(5A47A79IF4B.0W-4]WU6 JV".J>TK,[,0BF*A'=
M,%/'C%QL,X+E9!2>$$\K[3_BU#<5=5ZIP:XGI-82;</V+-D5JIQ:,*N&?FII
M:D.NJRH79A&FI8F#5L.C\U"GIML$:3(7@*T$.JSEBR/PK/",*O1U"79D:B_F
MA(:L\->!J$'4JXOQ7QVZ&@EHV;%LY[3@@/1:PSGHW/\EJ@,1V6Z:)(5OD8TE
M +I&#8YL@LP7UJ[7P-/446@@@B#KZ@G>)4?M<:3.\"%15*D??5$96E@3+1[V
MH:*CR5 =RRKP]?$!QZ8Y5".GQC3_(FN_;-B]22!+ 3/4ZJ1,M3'#;\XYK<4!
M8H)6H8B!B@5>TE,ZQ[9+B0>\EGMWGJ2Y-+0V^.2%%Y^<"*0?.KEPP#%PNC^\
M#3G*OYB\U=APP82TV<F(62/-GUN3H\PKX*PIKM##VM@FZ8C@&W"\LP'CO+4
M=IJ3U9"**!7N)W29LG$1&_D;# 46 &Q!$L;4D8.>7[@F)@@XL 3+7%,7]AM2
M48T-IUMMLXEXW;22EU:0HH'Q49PBNGN\<V6/8W7H&Z8^!!H/^JS*08?T"]S'
M!NL]IC,1$; E&DBS=T,-L_LXB/M-FU>H+#4)8ZY[7'&*T(AI':>UD >,"=M[
MDE+_'@5@J]A4MQY3A?XJV/W/D*"  <9F<[V9X&% T 1N[13_V2K^@V:8,[>T
MCM0^!>#JS#8G)&>N(MN?P9%H=.Q^NJ8$,7Q[-GK^O.^UHK.^)!UG'$ASCP,5
MVK/.U4VFTWB*/Q=C/WY#O0VZ#-9N,,XM.T6"#G8I"]G,(DCW(0'W :A1@(]%
M/ Q8N8Q&M?,QQQDS9FL/T#DP_!_P:@5'CQP/\B)QRPXX,#UPB0NI*" &K970
MO;II"P5B5PPKR,)49^?3"1A>$4A4B<(\F@:;2L#><><1^,_S,Q\+Q9,G+1M(
MTQA2.@'RC"[,:G]@K0KL(VLA!K8A:# VS=$"*5R0$?-\U<:^DI'V+->OSZ9Y
M[N7I+1X*O_D.@J,*+@^A9N R5P7 :O80"9&"320L?[$]D^OQ3J6O1>Z3T5UM
M_C^,-D1W] *M5O/Q%31"YW<<&=]XH-]D!0SZW1Q_CV7;LUCV_5DNQ OZ1\Q<
M#;I<(XE#9XV.1/CQNUK*-4M-\P0[O]U^/&;>^%_1I-)O(K@L"4W\8Y9UV==%
MWJSZE@AE4-\1Y7CTEQTS4DTMP*X$ ?^>2%!9J1/1PCTWRQX$<P22C2GA^T3F
MX?(BRV@<>N1B/!UA+R3)HC.X)P"J+XRFJ+^8LC5]@BLK0%S6$4B.QB =?CQP
MUBB!*PCL8,V!;:QB T7I74!)Z$^J_S=J#U3'_]N.>P]?990..E 28:7NP(6
M*GF0(L59)@^>*FX%@F</0+J&:YM4RX&_"4D-8&[$4PU;#U%>%OXD3-#?E)$%
M;OL?V#7:J(9(&?I'4U 3=RJQB10**&Y[ =M.<Y/%_<SLR8>NK<ILJ/=D,40M
MP(O!QA3:06IGL?0+MH20"P.FCX*>$Q)Q/C:]P()_[LF5:(1SJ8J_;!.Q\CI=
MDQ Q(>"F9D )&)69%U1I:O8','V#9**PCRRS.''2(LW^)1O%X%*/=V%^TR$_
M!7NH 4\*)V/@!]SWGNXXKV!=1]=(6@S-B<8Q=XX7<8:MK8D1*'UB5R25)/\2
MI0B"9ZQ;8Z2%)%QTLBK6C2!\ ;W )]B?BE&CK7034,VPE];:)'.%)G:C*)-*
M?7Q_ ":;U.+97T)'.Q2H,D:A_;$2:XZ//XR_"NZJ94G:;B*]2(=IH%$P-(<-
M\(6D8\]BJ>E[I_*4;/3,=.S:/,4[9K,*.F/5/)8!ZP2#;9#\Y8F9\]<W=G"O
M$>K/GD+]08?Z8Z=0?YBV5'"V$R"Z-/4A0*_4>@V0A$H/,5CL[LS)/.9754,R
MM^"\/ RJ;-Q"UMEP0&1H??+BDY;,UV:)H_2J86E%KGU'D)0)H^&=0$]0W=.N
M<\[KE\[N$*MB(_]\7]:]MZ4XK& ZVRU7YC2_\Z7V;/C2>A.EY^OZ(//C=_/A
M]C;7>&%J9:91N;QJ7=3*%P_-$I-K-DLM)G=79+ ISE0KN7RE6FF]F%OEW+&U
M1,VZNWH!8L/J_+-24&5!< #'72*:B*1TZR.D]CL_8Y$$&XMGV%@R^?</@WG/
M22T>;#JL3OY#-7;1/+2) !<-OB+Q;A(0\R50>A_0O<O1D@:02]8WZ#Z:(CU*
MPBL&P:*'K6FAF<-Q_.\/RZ&R*%@=[Z[U(2PM-][/)]*7:6$3Z6%E$NBP\M1V
M6L2_BV;GYTO?B_WEL1G.QZ)_N>W__YB#FMI[)F73WIWZ,CZM6N^!2I&VV%R"
M #S[4LKEI-(9/3=B%FSOXGDS><C$Q[G1=/4_YJ>>F)L[YMZK%/ZE4W?3]J/9
MM;3])8!XZ4R6C47<M'W7$W0_FL#H;LD]_IWC25J8,;.EE+1\C@X:LN$).\^!
MG+GQV67DDQG7^5%23BOZP,)4I.^YWNZE5 'JU;*9^ /*VYXT8JD(FTI%5Y)&
MB/0PSX=^MRQ_5-!TD/6B XULO^W3KE2 Z<,\?MO3RRC@IU\26)Q$>&0 F0K_
M^^-B@1[B"3:;B6Q #W^'RQI62,4B^->@N9B-:#:1V+X-^S6(+N]7@.5(L@Q>
M1(ET.&N+=Y0I\:([7TI,2GPQ^E+H/$9-PK3OQKPCP>>:EM.N+Z'FLIQ=L;4X
M4E+2Z?A*,G8E#;?##8*Z%QB=MW85BVS(^=P4J/AF"M0")D7]AOO**(5I3'E;
MJD"59-Y->PI?8PJ.?A*9.!N-KJ:?_:A)1\P+(T'RP@4*K79FM?J#T)1B_2/E
MA:[^N>V5O"2;2:2.EQM& ^2&)?_<L+2,&^;*S_R=FB]P#YD#Y8;!T4\TS<92
M;BTV#H$;SC&;[4P%[]-9_6#(=E%@3BY,0(SI:_]V&[>,5OPXM )@,DE/)F-N
M^PIOU74LIG]<ERJ3;LID+W,'M\13M25W,3]Q&'ZI73H?PO) )3T]#^9FFUZH
MU9Z'(!U/BQ/X@YQ/RWA%B'ZH^&IJL+NBEO );=I,5V[50G_P%IY?RFU2?YAK
M:JDT=A&O\ZWJ@Z:@LD5!^(,5^CW#5EK-0]SGN1E'<9O"KKA(,LZF7?NT' (3
M66%WUVDVW*&9Z6E/_<68\6K'9%>)==\B+QK7%TV:,][>H2%N?7)'KL=,DDTF
M5@NU@S6V@W0]>KM[//3@!3,[%;_N%2ZEU+4:]=2#PS&QERK!?YJK<5]B+K]"
MS"VAG.ZX.,UW&B^Y07J_,B\<GUZ,C23WZI+QTHB.3-05UQ=U"Z26;<1[P]K-
M57;2/UA1%PX59M)L-G)@<;;-U3$_+N@=TZV;5(WYD:I+G=<9/M*/SN)RM\>M
M*U4W(N/@Y.[.G=J^23<\G]0W=7!OI'8T!XHZ)MUH: 783F)#)E$62/F96T_O
MV4WSIJ2TBKE!/V'>JL7Y!JZ?TBF%>UW2:38=/2A7K=<G_V4\6'/5[&,T1SF'
MHHJ45Y/?G2)WEU!@7*SGN.>[<3EETWGGE[T'5FY-.UPJC<:S;#(9.T"FOKE2
MT@+DWF/3/EQH\[$V$;3;:KW4$BQ/-:SMI%IL1(6T2FX52$@NWYXEWV2E&HE(
MGX4CQ0C9#2:(21ZWW%A75]6UQ594%:\8K3U+M*Z>GQX2[\)KZBB+VAYDH^(9
M\-](4;Y5OPYU;.@=">#C3S5IQUB35FS/^$\A_M3[D-Y4I'D7KDK%AVH):M(>
M[HJ59J'V<-<J%9E&Z:[%U',OM^C?S3W6H7'Z6/%3AI:&<FGZIDI29>#5A=*T
MN1T.S; QN2CB7;%@':B);-:>P!NK%&N)]Z\'.;[,"$FC62<BFVCVL'GFIR-Y
MOPS2\%L5=>$.?:4U$:1/X1;CM5B:Q)"KUJK5^BSZ^-J>C5NSREV\,THG!C]"
MT<6,(KC(7QX2SWY605; N5OAQBNI32K/-MW[D U*2F5AU*1M1X,O J>V)HH'
MZ37$2X%[':<+D^0&I.?'B+736#QLKT\PI$.W+'071#2R2?[':C)9!?KFN>:!
M*@@>A*(G8X.WRV3J.9D-AT=YT4SBB&@&]B]DJHFP"1]\9A.JR6Q(-65%5SV(
MYK98N7[F;M_TKUBXW,732X;V/GD8CK'PO +K'E;(%!IELSXH=&N?E46XODU7
MVUZTQ99)L6,;Q4X_/JIR?]B\_MPAEW/XQ#9V_(?-X4+V,F73;#H6#F<K^B40
MNP^@A+L.Y'!?CK9X5[&"YK/Z9"0DZ\K;M=[?$UNK4$#>G@G3AAXZ?CZW(C]@
MH[,+EVPS2!XGP\T8L.C81T3%%,0[8U_> 2HGW!-[@$D()T]]B)[Z1'N6?KE+
MJ5(Q%KWI;^L3#@@\VEC1(L!S^,#=90/YMX$;QL,N>N)VVV&"EK[7GEUVI(HX
M*;UE;@:;^QPQU& $J& .XS$R3QG!@GDG3#!OBNRL,=8JW9"]<VC!R8*N-"X'
M+TF+JN:0O7,%[,YM,HU2H51YS.6K)7\PW\&?NK$N:UDYB") %E)940NJP(OC
MJJ)IJU '37+8;,#V[*8S'%Y+:G50WOHR^J&(\#WZ&40*I5KBM9F_5@:2TZ6_
MC  .UY>?\>G+=Y?IWDE6FPA8.]J;Y8!/VQSPCX\/Y4SJ,AI34QL&O0W(N,V4
M@4 7EK/5>N2*F<^/ET_AZ?9M^X4MA!Z"1,);-Z_.MO8ESV_[^FHS?9&'7:J(
M9;7%2,QR).5R=XV[6>&RABRNU##U-JD.!ADQU A):AX,C^A!IFQ2S?F&$2U9
M4$RW@NCSV..0O3]L(A)GXY'5%6R;QXV.=(\#J[%)L=%4E(TELF&'F^SU3G8=
MHZCHG7%/EXS5UU5A*.I#:"R&V[G:]%2XT7;?"7K(NM6IW(,XJ*='D9@0DA]E
M:0:EN232?H^GJS(:)QU(;4>(_I0-SS1D(S8=9[/IU;2]KDOE=(Z^SC$X.(1T
ME$W$PX5ILEA5R46Y0$N^4\:"C3G? 0Y2)&9S_=NXD:3RG\E<KY:]#$G'\*"[
MT*PF'%8PN9E#=Z$FT+=UORTE@; UH&@LR\9C 7*P[6V>;W=<P>$ML)E,ELWX
M*%G>C=<TU9X]\UQB,B[T6K/.(??AVZ<KM2)_(@M;4:=%TBY35[U<9P[)L.RU
M]NQ*U[OW5T\1?HOFDWMSI"9-1ZJQ2&C4->\]1=1UUXR4U<)7?7#CY3RMW#V6
M[EJU1J6TD/^Z"X=ILSL0>%T2:CWSN&A-F.\$=K]#M&>EZ.RSVKB=13_>OX=3
MM-R>R?%)^>E^E']K1IU.T24'>W*&;N S3-J<H='[:9\?\"4^PAV_,[1@<X;>
MM.H/F<O(;%Q.GYRAH3A#31Y5%F510YSK4E%X1ZYXY6Y6%._:L_3[Y+H4GU;E
MNTVR=;=V@T+?1$F +I1]F.'AN^?<=S9<_3_.)J)I-N-#__\6'M UMC@X4"HV
MGHVSZ6PB; =HW.V6/BGJ>T6NJPKD&+G=TF3O.?FDY\5[C@O1K?GC-TP$&L:.
M5*6OHKELF$'H4% N-*%[(7Y=#$2>%] C:!]BXE='E2+I3':A:&QEYN'%>NE[
M^TKR=C_;<(DXFHRQR6R0& 3NCGMS;0UN<@L]I$4T,V1H-_712!(%5PI^F\2O
M/X21-'K?A((W0,+P]-&C23-#8]:XBZ!&YWW\7EV?-.EQ;N%*L10;R238:#I
M_^U>O5B'?6S!P>\AQ0..;@= 0.[E1N;RL:O=YF@W6$OA_N4MEU1>WFZ#+ E9
M3D7A.MA%8\E4+'Y[;ZW]C,/E0EDV&8FQ$1^@ZL?!A0[B= )C-ADVGHZQB;!D
MQ-JN\R@RD'N=V67J1GJK;-)9>8XW[-FCNT__.M* 1X@I3^L2)T,_Z]*'+HZ@
M$&@]?_LZP[1GY7SN@2M'U4YM\P35O9U6RO2_&XMF&7.Y6''%E0 #1>(-M[SM
MBQ>?'%(4G%_^X9;[_)2</;Y]2>5LI>OEOJ\W:O52H_6"OG__4*D#CH758OFJ
M5BTN.']WZ-SWI @OMW[4#SG9B.B^ETW6\K%L:Q@-N.0@2,W!I6&V]G5=OM)?
MI:HH&7S0[KM?_U3_()?^:M^VB]WIYF\/<MQ<MZL/=0G9 'P8PWM..P!_^;:1
MA*W"! 5%&^\E_K'5K+=K4[COV2-=,<S(S';1B,0\3@S1%?.Z*,$,B5M('(Y4
MY5-P!>4.JY=[QH]LHHGMBQ""[=7OYJ>MZ4C(?8E:NVT QQO+1L]5;&N^Q:65
M[5FJPO6OW]^?AED+O!MN5#!MWY>O<IDQ2.??7CK]8!P@<39]#/GG%AU%G<F+
MAM2PLQ3TLR3 #VC?[-TW/0]DAQ17>U-JL=25-+!P@FVK8%Q;EFZ;=1_('AT
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
M+;/^5UT:=WJ]=-96!T1>8IDU<T^WZ@/J,>EE#OX ;.%(AHVD5R="VXYCRVS
M@R.<A#OAS"NB-C9O9^^N-!5YN+YY>Q"ZY>NNJ_O,/L >R,OGTL*EO&@VX1$%
MWP'E84[]R:DBYQ1#X=.D]Y?]46O*'[4NY+12ROR:#;)WCTHD6><7N1U.']V(
M&OVM:ELZ]4IO#8XFXVS*1U7(:I)<YY17)L &I.7LV,-T,D'_8#4]<E1J^LD$
M/;0%G6C[9((>GPE:]F&"6L%Z9ZK$P9N<@54"@,F)U-$_V>2,!6ARTIJ0UY:D
MIU)Z7GN,?C>3,[AJ6\A:3*]N9G8R.3WK=U>8G"NYV[&:F('18#S"1N.KH>EV
M;&(NJ[',MV>S22_R-"M>:5]!!5U/U5$^JJ.$K@H@B>=GHHS+H$C.)TXYTP5F
MK#!=754%N3L%BD5*F88HZ9?M2?0:+@9"),+P8!.K&G.QF+QDR_JMR.23%;E
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
M&JK8T3%J#?PBU^N)D@@0YB%Q@71$25QEWY6>:'FSC!DQ/30#N_A<<:5]KN2
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
M4HB8?13=[HL(#R WP9OI+B1R'UJ=8G89[LS&SNMYLJT4JAU-R+=:/=$/^DS
M/;/]X=/XUOIW1=@'Q5*_1>VASV9P@9']<X5+S^*?V9*4/+:BPZ")?EGY4DC5
MAJLCLH/WL=!/##/ER=9=X\-WA,ZOQ:\;8ZQ8I[O<9=$<*"INA0/M:3P<%0Y7
MI?L+[1GWE1B6<[E2Y9W?%3KD)N'O:/07[>SP&Z_D I;"5$49=[,IJ (2&XS9
M/,7<@E@>";31I/\0Z0K*L^#IHKBJ-5H7K5+CEJE6[K"GHM H%2LM&\ZRVX_'
MXO<^M2(TMX([F)XX36$TMIKB.,,/ 'U NLL)$YLGFK0]N.)45=28/">_FV69
MY'=&62;X:%4!O4N*TZ )&BZ&(]=$0K>&U&NJPJ<B?<*?)'J3Z",B@8/&[:70
MQ_O<6$#3P,7&\)0^,@+!$@2P5?C=3_'OY86><%EK/7)5RUQ7E$#>D9YA>455
ME0DT"./ KT=0NZ+_E[UW;4Y4:=N&OZ<J_X%GGGO=M::*S 6(&V9=SU2Y3<PD
MFJC9S1=?!%02! .HT5__=C<@J.Q$0,Q*W9N5212ZSS[ZW&]*!),C',,Q8"?]
M]K"LJG!$&B3'ID0'Q%_[\W>&;[B]?//K!@4A4=T;,%ITP&PR>)$O2-;O0PF/
MH1T$<P%H8RH +CLW_[*]J5@J/_UC,3@&@/.W"-#@$DI>]UD!/ -.2[2;8+>'
M-3@,$6B_N_';W>[> !K68)[C@F1%O WJQ6*+TP:VN63M#E:=FMN#X.#-#=HM
MU]7 H#9JT;(7L3RF]Q",-;TG6>@$-!LO^30;A\UN+,KYT0J5Y%J%O;!Z'3!+
MM\^=GTVEF;8#P[(-0R=%&\:#=@EJ5(C(NJ(NLPS$J\K3(_LXNV$NV340[S;P
MYT,J^&?1VJ4?%O>E6+;16/!'XYHBAK24%( CF(((Q:(LSU K#K,_OFK.5:1_
M%/-_!0A75K=$."QFG[(BFN#0YG1EG8MP?K;N[:!,!>@GM(*H?D^]%7D)W@TT
M:6I+03#_MIY\>TK*X(G/=1G8&2?EJ2I*1L\#>% P26LV F\U<UWKK3O,.;3*
MJ09N#_JT#GM?5>_\+%C7LW0<0\_;T>K(J%K=9IX?4=H8J7<(P^P8[1CN6%5?
MHA8:QFW6*DOG7S8?:!+0N"Q.3JK)'ZW6VR59D-E,JG_06U!R^'^\N:;'%N.H
M!@OH<&. ;H<]HF01Q$?!?[79X%7@=-3U8PP/'1L"^0 H/D&3:-%_44>/\S-
M0^,C&IJ) UM#VDU X,\?9O(I>"R\!R0V 60; VN^TN[ I,?I;"")VM@8E@,_
M\028$&"4@&PZ=JW,5.C;_AO^P>273?A0>TYXT]P)6@K\V$Q&C!O<9YD3I^#+
M \-9N+G+A0C>,A P0$9N9G0,,4;JL&N2^&7+NB'%6DD'?-\YQ'%'-X$7S/*(
M@JM&)'1=#KG J]\?I<*?^GVMI]CYNFC@LC < FC 8>RJ<YCX'C?*BTY> 862
M%5" =XL(N$'>5R\>Q83\X9?MYC KIHJ(FBS-!17!$L'V!_: \MQD<+%$E9M-
M-!U"4SL_0WC4_6_FP+#JX92IW:'TM3W06=8-BM=EWFU$DR4 PHP]SQYR:V/Y
MXZ&[R+<>[4J\LH=2",EZ*(0=Q/25"9Z3V(^$9/H'Y3=@:@K3,0'9)M!K,(&=
MR!#LC)GE:!<&%5F8'PBXYV")L7#".8>L%HE=; J:\S/CTVXI[N*N*=B($\U;
M$X(S@]3[M^558S22V7D^(TC=B%X=$9?>L#3*(:R9L2X>A-A@0V05-F6.O>OI
MRVF='V4"-D1&8..-&J0F8K>L"O10L& *WS7<6,NFPV&U#DRLM]K/>1D3J/VG
MFVWF6V;E)#:$'40:1>0RB33'A.S90$,#</4Z=+S 1VW-Q][ZA(75[KC1(Y5F
MZ?5MHU;O8.O,%8C4!9$[!(CK2=JNFPEOFVTW:0BRR#Y%W?"A$ZSIKPG6<4^P
M+GY-L#ZY*'W2U[0'1_UZNJHA4X7])C"#1\(2(78X%%%SU;D1WI&AK!/1V%C
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
M1T%B8#C6VWOVETVP8!]'.9R/ X#(]'%D&DXUEM87K:$$OGRXNP.=.W)W)(B
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
M%2)[R27U6%9T#+8K'<GB2N"S$9O<Z!'BF>RBZ)WUNE-PO9>&$^F*_"@6'<F
M@?1,)R\F_WE+D8BP $C'YY^5 X\[LRW3:?7N.9?.HHD,I>?YV*..F@PK%3-A
M9>J2X,72]'Z9H_B-!#Y_:B:2S^QF5FP2)&/N/HHIXG0AV-&=^7Q[-Y32H5&:
MDJZ9-"IC!67JZF@ACY?RP:[GV'K?^G:^;?17PJH]61$CFF7MOI8GV+#S,[3(
M[8V%\[.J,@'/6V)C5H-M12^\$XA0T]OI5%4^T!AA:8G]SV;?4F9CF.6QVO#=
MC&;,DR8_-W@[)-7VR=8+LCVSVTVO@%/%/)YW+9Y!\,3^1OV"+W8/B@EW4(D7
MM*9X,&FV(<&)0@DG\K37P7S'%F.1&P,>L,0&1GMI$0@O<_V8KL"+!BX8.V*A
M_^3\;#C39ZJ +056=7;WA\VFT3Y$>+KV[ZU>TSBFS0:OJ.VU8G2)%H&L 9L
M0F<"?D14'2SA=\SB4_-,1?A=X6,JJO!L1-0%&ZS"ZC&-%J(EV&D:2E>[)W1+
MD;T/V[?'M*.D*=+C^JO%>#'71KTJ=7BG]@PUF*;ZJS_%ZJ-<>V_<7(EA&DRW
MVBVL?5?OE'O-UB5VT^YVL6JYTWEIM#M/Y4ZMF[7^TODH[:7WT(:L?LK_WR&J
M^<%=G4T5%:)X_W4D;KI;[84+[IU' 1-@ME<=1Q/74%7"4=43(/CN  85WI!X
M%G?I+93>6)EIK,SW%@ :RY8H0R'Y ABEI9D\--G1-4>-FW/;#8@&MFRW:LT1
M45JU1E14C!WT@S=PN%PL,21.D&Y2T14$"?=G#>,F7R,UMZY:22(S,4$PCD55
M7VX!L5LHL>-!87#9&GD \8C@VUUP'*V!B1*)E^A@Z&7'UVE#CXP;>L44H=?>
M88,=9M80F/)U82QE%'W;:XX#@!0-3+7BH0DK*3*\8@(I,JFAK@O-NBW<7;4Z
MC?+EPUN7S&<4=[NKCJ/#!N0W^=PI9;?8("PED/.7&@CK<!M;(/PMWLNW][/%
M>V&<41#NKOIP$.:*%$X>W, \1>;'Q(V[4HJX<S$]'A?%@M"46\LZF5'8)6!N
M -#EBG'.&4Z-[]&Q6QOIF+X-9=?8T#I\Y8%L3N_*Q<Q!;W>]<50YP;&@1[4T
M0O,ZSSFR ((19ILEGM"5%H1WC1:ZE%MVWN@*J7LQT 3Z",>+\_BM&HHH LTR
MH1G::3)>PYGK/U7Y,UZ'0V.M.7F66TPG/6[FY4C*SJTX<D#V&.D65']UN6@^
M2_E1M]!\.^7PU6=(MRAKYV=N@WUQ%)G=S,/ Y( >0Q@[9T4)!==@$/BANQ'W
M_9$*P1(_9R.D+'QPTHP7?OWW_UQ<8 U1D/B?V!T[$OX!#WN?P6'-/[%<Z1\,
M=C>%S\,N+BS6RXOS\(S(V/#Z$P54U+A7_#+<U%N7W?O(.%V9NO&% $&V,62W
M<>$DG46T?[#><@I64%;9@<C]@T'.;Q"VI4 24J3S6_^QO@;_9+,CBQ7]]S^
MU&Y45P7V[6(@ (R"AT_1J9ET!ANSB+Q&IP-S-B2FFT]W+@JNUEB0 R>Q /Z+
MA[EN9>-)Z%5 ,"HJ2A[Y":0A@+\DPM2!,L?!2>EH\CEB4  ZJLZ*LKY$#,O0
M/#"@>G@D#IPFQSK-4_623.N1\QLBZG__;XDBB_]H4-E"K)/5!1[HX!)L*(UI
M8P'.L^=%WBQO&$HP_XC%UNFXZ/QG%AX,N:5H(H20AI^?R>"O4!"R'*?.P(.G
M@LQ*,"$)4V#N$V!O@J;#'%^%$]&;%Z(^=B8_K1\-O_0#Z^T*5\>'A0_62H32
M8)[35%5&X 4I2=#C:$_;*F-\:5N6BEYG51E<?0W8VMTQJWJE9Q%.KZCG=_JK
ME_O6Z^]);]B8Y1-18EU(_A/3@+HOP718+<1;P!,&O\C\#T!=1&N3O8&]8&@S
MV%8"%@54\]7KZNUR,>B]OU)>"5C-5K5]6\?NZAVL>U7NU+=YY>"SL,WX(6BG
M^VT#J\)J(E>6^9HHS728O.^3/^BLL(WXQ/ZJFK^?,U7JSW4Z-E@N_R-W0$..
MH$3Q*6"/L-H6>E_&@.V#K2,YP1N;MY@KL%V +(#05V0C]90%TD$98J*^)3DT
M'?P'%?"B/Z.O_\ J'@\^/[.?#/\/J,K<3$(/ LS=R%#=S4S-H#JXE9&9[Z\Z
MOUO=6KDTK/PIALG(K)2[S2I6;M6P6O/FH5>O&5F9GLPBV8Q,4ZLWBN_8F:Z$
M2=(L06O(_";R_1A?W3]Q,X825&<NIG4L-&  D.$0X'_Z_;4#;=63V>M:@7E]
MOBE%]'19Z:.AFT+'467KOD4*;HQ8;]'(]U^UBIW2J@HX3"%J;JICB^%:/D?T
M_^[;/-]!!9_/'_IUY_+7M":<8;B6H!MJP@T:,&=51B29B$N[9E3" CJ3:[.Z
MKHJ#F<$C= 5)8A7<6J,*P-"]DTC9_1^/AY+;*P[E(=Z@[+?0ZD18]^]6;@-.
MTPQ.%H)K[/9)6CYAVA(&;>V2FZB4I7"F6(3#JS*:,/SK28 4@YH'> AT10&Z
M3 #%D'8"M)F9#G0;&3*ZG_'$\[T#YI]KNH3-,"L.AFF1NVQ0&U@+ T%M#Y$*
MKK5M8B/5L3\5^?ZJ.WI=70F#<J7*)L-9W9H.H/<G36+_6[H7J6+FD,U6PW&3
MC5>B?FTYL@#(>&AFQ.F2-"IC]"0H11-X 29JQ)9JXJZI>&S=-'=W*&!<O=\%
M76VN9*DHD1&NWCZ=)\UU9!(>7C1*Z\[E"1B0CM)Z-L-W;B^BQG[K<@0@:XB6
M"ME);]E1\Z$+Q:FKA-+[OW28B*R4\O%R;[D.#=8Y6?!7K/C*S)[>8F2=VTO?
MJY'2CCON2.E0.\9, @E& 6>4*.L&AL^=Q6N('W'.[#UJD[:L'EL\PF'KT((U
MW'32O^K]E="8M4:/HTI=3"9R]I7^%7HK52,H?7ZFZ0K NC(U8LZ+L:(!D2NH
M$PVQ5P!2WHB%H_ &+V@<D,PH_(&U%%W @!&%P1 \1?S314]J&T]"OR/_ 0^8
M23PV!1^5=9&5I*7)L<U03?VNB\%5H) ,ZBJ"8T#P8PL@XU'$'J@(,(V&-[M^
M0#UA"A0#=.&4X3H: Y\S$#AVIB&%@5? O<46Z-UC=@[>)@@RV) N7J!OB',!
MAN+A7C=^>7YF$0*I(>L(SD[\/<D(81FLR%I05^!F1@.4NI%/Q,/G5VTB[(;_
MO(*')=?@85POZZ]T=L3-WCH31F-/^7)O!<**_57EMMR4^$:^+@EA F'E5J]Y
M@6)@S4?PB[M>L]U*N1_))XU^55VC7R_S_.WE]9_+6HD]_>@7[1K]NKRY>B]-
MR_?MV5O&HU_[6 !V&"C)>(/OD[V"#OY?2CEB<HP=N)N.-8<(.5!PE"<P(1/&
M&7D^&5]X2 /SVZ^R4P.P-*%LU-<D9Y[$<GRIN TI$B>(X*#;:5B>G^!\X_5@
MYHEB<L<;I2-LM];[HQ-%OLY]=80]?D=8%9ADR!;<;AGJ3(6\4\W.Q\@"-9#5
MU+29.4U!Y/N\DDC!(?\AL^++4NZ]%AV3C*SFS\BRQJWPNX@69)''WD@NRD9B
M[H*Z&@X72T98W/\9%B)OA K8B#,DE^RQW!'T:WNJ=CO-P,TXDB)V=U2/O*/8
MST>^O*>N@ T_8??<DJ^0\,9;C+6K</H#E H+(.0T00X6";&N.5J?W136[!DH
MS#JQ@Q:>$L5EQ45GB/"+3;^,\S\PM]RZ84[6AQRCCEN&\3/4EQBZ)U$G8DR0
MH<=RMX!)45']TE<USR&.TIJH<9*BS52A/80ZK"!K2(GM""COOJIHNF9%7 3^
MCEVB9'ZOFA]G1M>!3^ZOA*?&$T/.'O6NF.G*H,(/0Y_ZA:[U^5G;LGEW"GEB
M0PMXX^#7=ME1N;\J796*Y;M<CAG1GL[57KOZ>\>1FE*QT9>Z'GV  XLY@TL8
M.%,9^]L,%L'YFV:,Z+M1%6EV"X!1'7TL:AC\!."X,)PS596YR L8M 'AH] @
M/^C2!,8M^L";L,2$R512EH( JS:5X5#D!!4LEA=5@=,5=1W.TF:2SIK5/<Y.
M!_#/L!A(FPTT8#FS*JSQ%&4,F>;P'6-!FJ+,%)8S9I.J@E$Q.H;A)5@$NNZ!
M, 6O5F19D(QJXW4]*7PGD"-3\*-H5I\B60(>H2Y$L'>PT0F,JL%G:C..$[3M
M=:[+70<S391A:2C6U"&98%X,$COZF-77\3Q#8IV?H5IH!UTA(8 >"0-Q<,S&
M^PQ 92A:NJ3U=>-@@,@65$!R(RH(QVX8/1^L9PH;!PP#9V@)V]JTD],B+CJ
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
MK_(]^UM[%Z.#$/>B0M+%?NE2$>:7_7O[*ISD5E ' 78T4H410"\FRCI0;#0
MQ'5&I0ED2UMRMD-A=1?5'C"%'6$49T?(1P.J:%"643.HP%\YN@V5K>TTK=T8
M>::)"BMMS%_1D\D]93O R^')FG3X(S+1CBW%BB2%,[3W<)D YWLQ6\#C/VX,
MXR9F\-6NNC)3KY"-1A3P_?SY7'O^^?-BBZ] N7(A?ER,11XPGY\8H"@E?@Q4
MB2SF2]]^R:*TV>K"<-*YO [HLH&. JC1[IS>3K5BE'+C^OL,T+,I:[HZ0_-$
MVE"'[HU9V3Q7CU,SCMO/CQ_;\2VF[RV6:5POQ7&4\]O#@CT.$4/ZM-)0BHF<
MQ_"W@.RVG5JRHT)QQSD2&Q1I?D(H#9YB>N(I@6G7IY("F/(%G'*=B6FRPT^A
M(+KKNMLZ?@(]Q: _;:Q(O*!J!F" "2+41(V3%&VF>K4+V[ A0S^CORH]7XY;
M$CO/+:6T&C+^Q#0 ,>D"T$ +\1;PA,$OLOC#L)I_5=FI".RT\S.TR?7Y#-:-
M,@8Q@@"\=+#5!J5$E?LK0BR^OQ8T;CXM>77/JI;OFKWRC=$YRV69Z,?/=T%.
M<BOABX-\]>P8(WCKA]; ,^9 P,P%6V[ I@P>P1O':RS)5N!E1:*T-[I:RD@@
M(#@PN[.-!&.TUG@$%&(7T>:PV50Q,F/6[8EAAT$KE+L9!/0/Z245%8H1(.W)
M_+U4I:;:FU>N8F8B10D!Q#_F]]TU=E_/QLUWQ,Z<+[+.]JTW'C[(XW=N[E7S
ME9G+[[N3!,/[YV=A&8!G'L >F<O'8P$!2-'I ??2'JL?S"G%BV-&BG_L^%-;
M-B>YE;9\?G;+JMP8(QFDHA&;]=O:3)L:NAQ*<Y5EV-T;I5" WX+CUT4)&\Y4
ME#(K*SJ<0&"F&<+/SV1.4'56E'7X)!6U2[&<=]7V8[-V03+87%1GGSJ\D[S)
M>RO*R&-C-1D+-G8)!TL-\>W^ZK*T7%'/E*+UA$R;N:4?@.*(_BU%OD -W!5)
M@J"SMJ>YF:1YP+_)/'^3?WAO/0R]3-)6NW51;;=ZG?;-3;-UB35;O7JGWNUU
MO<S33XOID]Q*O75W?M9$(6OD/8011Q:3Q(EH-$!E!ZAI%;B2ZE11C2#]WS<W
MU>^ 8;$ZMK&0W?Y/"Z/_$UC(; AG!D"-".J] $.Z*@YF.OCW2)&&@,'.U.'Y
M&?R;HL*++.N J;(CP V 4 ;?PZ:JPL\X'947W )&J^@LCC4AC!5QS2I1S,3B
MT\I"AGOQ;;,Q&V@B+[+JLCV\,?9\8VW9?$Q;-?]PQZJZ+*C:6)RV%^8/UOT)
M[GAG9-RMO[AE2,E3^P1N),Y2GWHS;C"Z9]]?)G:/*'O)*./$W*CQ5!C=<'1[
M#-*H8MK\GN:XZUYC:I;G&=K\RR8-P \ />;$O#X&J!V-,1'\O!@#WKB\@#3E
M@19O4[O%RDIU+$Q^8&49O-C*4)D"RIA8@R+<GOVQC3L_\;*F*5!J83-S=B14
MEH#FX$<4[]Q!5W1,Y3KRR^VB\IX3BFM,=;;W@J:# 3Q-U\L) M,>._*-@J>
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
MZ/DZ'Q_ Y@0>0V>OH00@=J J;(3V#\F:TH=671_"-DW'DD$J@U* 4&5$I_6
M'Z%3':Z>"[KH<342,* 3GXSML^-81F&7& *G0PR].G$W4/TH+#L$:OU8>8;Q
MZNG$3!:O!%ZB:;Q$)>W]24CE];@%/45GI2/=&#?]YM#+XLWH5SI9K^=Z*T)J
M#4X/]*ZNL10GPY\&#TY+8_XLG#/5GA7I.,7!19?N_]S,&WI%N>02<:&:OQ1E
M7H /)7[D1?FTO>=U&4!Y^23R0DW4.$G19JK0EC=]U-J-(H]NQ+G EU%LJ"DW
M95Z<B_R,E7;]V\:/2R]W>L75G9[\,OJK:?,/5^T\5M1')O/^]=Y8.#^K*A/P
MO.7__M\211;_T3 )[/]"@@0P@W38WU,S<H9C@A4SPS%1UEEY)()+ ]XP4A1^
M(4H2#JX8JPEC1>+!;Z= 4Y)UP^Y#C A3AMA,$\P'?T?.?$ VV!#P_$R4,<-7
MACZOCP5LRWJ$$41)4A9:[$[_8U[#K>@ TU_=CTE!8%XKTNPU3'3@IMVZO+AI
M/M9K6+G;K?>Z6+E3![^M6I$"(RZ 0@0;08.O2,%7I. K4O 5*;BX:"DR9Q3I
M&4*O+S:=EDX$_[]Z_?OI^5&E&]Q:C;W9%BSQ^'6WU[ZIF9:U]C A[S[)D'@Q
M'UQ1GR'O?M[OS+DX'/;'/.0D_/$TG<<+A1@[B&;('Y\U1V8M,8[TT.VO*'ZF
M4IW+*XHOA$!K E9V)$;UT(V!41$X2>1Q\/1/XH;QJZ:)E[\!X(3E;\="S#;7
MBPDQ>9+!F1"-@[Z<T?&X#L,PO)548]2[(?5Z33(91F1L_F, 0XHIX$Q2SK],
M@,!7ZG$>+N'L'7IL'E]PZ$PAC^<+P4D0Z7A\J_T5,>.:C<>F<EM(QJEW'(_O
M27K->F-5$,[/."L-&F,Y)/G 38#U!?^SZ4]C"&=Y4-GXJ-81.$&<P]-O";JK
M9NDH<Y"A T1%C=TZHO96658$F1L#0KQM543L/MVJ$T+JQBW[JJAV]O9&%!UM
M:OTW*^F#>.PLB?* F5RM[[WU#DQ=OR3H]KINVE?WM H=/#=DQL/=5AW#_0<,
MGRSB#.T6"$< QO[>/N2*HR965[BW]A1^OOXAJ)RH"7?@/VC>H,CW^6E_=C=3
M!9]<G?T/JG:EZ??CKJY=%K9/2H">;^T-FQIK8$>>YX5*8CT7OU]FS0$GTVPU
MUF=S03D.!U(-V,-N34G1J?SU'7KW-1BK!&R"%S!1AA.Y2.QO*!VPBRA7TZ&R
M9^%&;LK@1._B=M'1D>XBC1?)'$Y2;N7OQET$/'?[7)EHM]$]!VG_V\C??31:
M#]S+BLO'>-<\LX(2O&N>5/_K^X]CC>W[B6E@\=(%QTZU$&\!3QBLU8_!3JQI
M6^]*( @]&VAH1*1>GZ-R0/>(,>%T'7A^I[\J+A^I=N=I(0W2BNY&(3A%_ #$
M1:2V]X(9F_F!@0]L11VI?'_5[3T0RTYAP+98SZCC0Z5;OW^HMWH8K$CJV1%$
MQ\GN'G+F)TI^*O78#NEC(Y5%&L@V@W8V8>Z.656HL)K PV\)LH;D:ED%7QT9
M=<!+^R-F36UYP:J\P3JU2_@.K2D#WBDJ_*4*>VM!U@XY.K7FZ!21HQB3H_>@
M^&P/[;2*K8X,DZFD+ 5AM\A^\U;^_^U=6W/;N))^=Y7_ VHVN^54R8JNOB1G
M4R5?,N.9)/:)/#-G]F4+(B$+$XK4X<6*]M=O=P,@*8F295L72N)YF!/;)-@
M^@IT?XU=8B?L_<03QB!\.6O]_<__^?)G_7>1Y%2A]F>>FH-9J*?,]PK6*M/6
MU&); _^J'\/*&:RD\;4QSD'FO)]C@V+#0^0'/WULEBJ9=2O*Y@=CBQ=Z#+A+
M:-(H>4,&093!=[6]XKOD[_C*;3<UMXD<ZD'B@GC=E%\2NS2M[[?7W#JOWE6M
M/>+@.._ZB?5Y%:?7*J5F!JNC;S*6';,T#1W0AU%JC,@$+((94L:3T-.$4.KP
M8%S,I'HB1'>3]6'47L!4$^0OW+=ZK'9.'9!K4Y[AG+.MZOG__M_9WW]_:_RK
M=G/7Z2[)I8F-VSH:L<]KOEXKFJ\G&3S+:;[>W)[FZWF% YB9;I=FGDGF>O8L
MQGAK)@].)=(M_H$,GLRXB5M\O$QG6<^B4CY=LI\,,=!-*/J*WO/R6-B2==OS
MJGDLF?#+'EKK0-$(9@$]KBL9\ >P# 1Y \L6]I@^,D*#S<"\Z!^!H>B%3]+E
MKB6YPY)<Z*EER+@L>;5$J?_2ABX2(1VO9.]GGTAL9=3W%<+S]9P(;>:FJM"1
M8P2O6AVVEJ</EZWZL#S)<[3N0SUVYWN6L!%?;"W:*T="L953^5,<'O0YUHZ
MX;)CRT,Q)&XL[>D@WE,(=WA(92*VP-8$$.U@X.32._0WZ:K@#V-=7Q#0&SW3
M$69X:C;"O,C'2SB(6J4%#PX\/P0N@@<QJ&I?7S))%SFH!.R2H@!+W4HLB/JP
M;# %6]6QT*OP ]I8$Y/!G/7@ 0L&$'%VI?JJ'CPNKO$C1^,@^.(A<HCLH'1X
MH"I>8#I!!*%<>DZ2;KBC/CZL2;"\?A_B6"J;P:GBU&#MN8K@L3)'U^NI2?OP
MLQR H8?@THI"^8C195=:PM>+K?]^>-"-?0+]0 F+;O@ ZW]\"9\KT6$/UN#0
MG)T1A=<!Q:<P(>[35^-M2/:WS&Z!E 7V&[;Z\""]U_"W1VD+QAD69WDN60)'
M/ HD$I-?(I]C! (_P -6STP;QQBGP7R3>9V_A87K$.RRS=S*J;1 )F$GZ2@$
M&$/_4XD6[!_84]A2Q(/K@5RT7#<"7OU&$HDN[B>0&ACH^#=*!<$W1X+[^I3D
M2EAT6L3JU9*ZF!X"2W#?1U'UHI .,1^Y$Y'<@4Q&\)H:)8@&" 6+?$[\2NXU
M$<;1OH/PD*@"M4L00S8MA<F:=+N*<Q&8TZR.DA8:!,OT8EJ\Q23N"$3<%O!1
M6 8UY6^DI*IU?EQM'HFW]$*U::N?TNO2AHGX,I3P]/4/BZ(2"#.HRJ]Z7F\H
M[=&GY7];9G2F:(ZZ0-6E%ONE*X0+HQZ V>%J"ZU&%YP[&I9X30MEL,$K./#M
MOL2R8\SEX4$BV]1=VH7-URX@NP5ED(IBU9,@;<4-Y/K(!J..[IS9-^5#!2#A
M =8%DQ86 ?K>,NB9@P?C_='/-K@*X%=@,;':W=A&X^XFFM WNTM#&.W."8\
MOSQ;0RX\<IFU$D5()F9,P>%W8R5W"1Z8# )279,? %)FT8Z^G'$M$X>V,RIA
M%DVVN=%Z_%6ZD6[D^@.']DA-#L>\\,!?PP]<@:-DA9X/&YW:2[(G"&^,YA<<
M+U<XI;1#EG+'$B\L<0)Q(KYP).](1X8CVJ!9^TFF%'[%QXU7\GA@2C7H&@0S
M/GV;OD>6^/=RN\P>8,=]<$U'^&<Q(%\Y.?'2Z^.LR^4K=(/2#8O+M?*6*.*#
MD(T-/ <<*Y$=#QY5WR)34@RI(SC2*L)-0@%D$?5XB: %4NQJ"W@3F!GC*L3Q
M1IY!K<*E#__T1=<1EG(A0N#J0-T(*DHP(<8+I/J%9E.5@/^!'=7>SA4.B#:1
M^/$Q?1%'G>@MN0)U _=')&G"[\MP!9(!\6:6:)18'(;B1RBM<:#A&T0:R!VI
M[@A\F1(]/1?&SO@ZCV O(7+F8\N5J!@5]MI&^WR@#QW5YZ]B2L7 PN!E,:V+
MGP2DH;#,6D6NH8'4 82E:N]*A$+A^>G]) V5[*=:!U@EQV8]_H@!*$3DP.NH
M@\G(,'UGF[49A999$]D7PN*PE[1YDH0 +!::+T>"[.CSE6>X%WT^8JX7&MXB
M'B&.8FCPD_UE+2?PZ)SH;V$9_D:&'J7B&F3!<8<$I+H;H1#%QT6$9Q[1B831
M990PKME/QRU(5D=0QUP@VGA-'35Y_(QR3$@)P$NV- =+Y"FAUJ% $6^(Z&D/
MW &92"H98*-Q/3^M</'+N ) +>K*@K'71/8-*"0+O2ZES))MFK8&7)V#9.FA
M,8^N!P:&O,R0?Q=X8)!RH-DL_]E[GAGG]-+464N)=2CZ!Z(M<*A1C2:1@3HJ
MG0KPCNE7#SX=<W[R>5\,/?\[$*.2R[2+3JYX&"J^;F/H >H>"+GU'[B;MCWX
M\#U8%'L(')UVX'4P4:M4Z^SRMGV;?*O,IF/2L:!#FD.'L;.CB8,9O4O/"W%"
M6!TZ.E)#Q0<[L?5)M@C]"G29C+(H1'1=M@=9&E2LJXXCT^=9$U*7<3JU.#L,
M88!XSV<)6+'IZ\-,PRL*W!37TV;7W"\MOJ>*#2PJJP47./)-R#SCJ%N]J5Y#
MAC*NJ .!-2?>P*LJT&3TK/::1^ $?4>?&/R*Y 6FGB\]C^(=/AQ](HFP_H'I
M;-/W^*6V,LA)9N%)D5HXD5KXDL3"ZDF16%@DS>Q<8N'%=F464CL[1>%-DH.P
MSL2:7;@7V^9LOR*Q;]]T5+6R73HJN:U29%['%V*WZKY+'5C'73K9S^C3TLW
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
MQS!HZ]N%0:N!9A6-!"2+L5-/#H(Q:-E[G[L!M_0)EFF-RVY<6PRP$;=KB;5
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
M%3#-&7SVCW<=SQ[1/WIAWX%__#]02P,$%     @ .7"M5& X:^G7%@  @OP
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
MO3"*3D=]R^7=T>QK#G/GC_4OF:.G0VT7M:T?,AORY'B(V\.S2&XW!#;U%S&
MV]!3F@GEF A^BF(?J0W[=IVC#%$AU-N 30V%%)37HB^C $HI,MR!409#'OIM
MP*==(3ED@N.CA%F;Z'$'Y?XH?_UD=& 9.9!/BOQW$UACATQC_TT]KYPK1T;P
M791Z6+Y-H.M&90!,FN ENY-(7\8DP;]QGLW'%8IHTUJB31$Y5%+_A>E.K%N=
M+;OU6]N96+^F_@OSE[$Y<KL%AH!@:3-'Q@+8LO=(V-O1@.?A%<C1%7T<!70K
M.T7ZYL :61-F%'\R:[>.=' 7MDTU3' -F7*8!/]%=8SLIJOFT7*P3D!I3Q@S
M]Q:4@R;U6>Q&SL%T,G7,;@!]VE:Y^EYV2 $YB(*C8]_VN:Y#-G7(ZKZYAN[7
M1";'2>K\J-MKU_6LRG#)K[),XUR[O79-0Z246(K4&ZE'A-EEDR]Y7&RW9:_#
MJQ)1 4-YAKEU'%-:V!7@H)!-79,XA2CS):)&2%^N/CGJ@E.E$($!LWQ@99:X
M[;JE[0:..>2SY,3.VT;FR32[YB'KS@,/$_[D [5GZ<2G^X @ 4L0,,ZB9QA1
MR%LO5Y+(]],KDC<(<1-*81@8Z):C?=*'4Y-O:,CF5MV %N P8Y.UE"PRQWRG
MD#^]'7>A\]I-U/4K)!F!'#C!=U/:6-TM?RH]LO:&JX;-"^UHY?"(_IJFV[$Z
ML&21H'2KY##V8 I<I;'JQIB0A%8.EM3]DN^OA$E19Q-A%M3NACC1L/ B]KY*
MY#6[IVMIY."(FT9*)@5@8MB?S)'>^:IK,+'7"7MQB;W+E;T,PA!H $=.+$=)
MZF6QIQ,7+/0^VZ9UK0_UD6&FR'5X"2> &G:'R"CDR.RY0K";?MI=*UB/2TM:
M.4*MKQWLL)+N4[C'[)' 04RV9[DR1_$UBH"GIH7# 26E./XH=:F =?W)<IEM
M!%9UX;#8SLE\;8Y,,,#_THV*56P=Y,>1#Q8N9S9_CHF?U6O M$4).9:BHZ2
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
ME[%"N\3Y>B^&;,1EA+,,>)DAJ+AM/G\=!EL:N3+2! V0%JD&'[D8/"%<542
MDTGE/,/%*1\MP_GX\$XJ'ZB8JL>8>OG0',7L_4N=Q<>F]U+9Q(.W>MS*ZZ9>
M -AV[I1'\7'C!ZG<:,)+/>HO0K2S7"<[]69NDI;A?/SX()4?5$S58TRY94";
MNZ&*'6_32*_#8.0%@PO/(L6"^\)!JDJBSU+#KK?N!3;"9V13+8Z:+O4_IX>Z
MN;0F[28,HB:!A\%M8]6PRE4B4P!6=0<<,E*X3I94[1OKNZQFOWT+,*:I8:9;
M]@ 7RNIQJEH@"#M6>[:]!)=!Y'6$-#>*9[8:YKS5K^(G@'KL*X=2\\"WQ>+&
MX@P^-GV4PR86HNJQIKGVD^*"M4[@8\R/<AC#0%,]OK"UFJCF^DD.Y5^#=DJ+
M;?;E'GL52]-/[7/XV/&S+ W%0E8]!A6*GYBQ>M-8%8[EL@I"[@.YZGC9$6\[
M#UK.XYH15D^X -XP08Z(C%&FR Z 1=A$1UL]3N6J*\NM<^0>FL?+CI^Y>41'
M6#T&D4I)7D77.%AV[,S-&@JJZO%EYOKXPD]ZUX3#@C:-EAT=<W.&AJQZK"F?
MQ^S[0S"9Q)HG.TKF9A<? =1C7/%B"WM+-0V6'2_S[ZAV5!7DRP$KKB!!*<^Z
M5:6]'B>M93_SG/EQ3%7(O1;39Z_A*+!V-%# 5NPPI#I1(8^;]UBD&7?UF%94
MSCR;K&V\0IXWAQEZ#=NI_8&7.E>:QDJMI0RVV\ G4)&+,NV0UT?*MJ>4AW4"
M!NBJBM+(@5@&$+>\A>62BGIRRX9R0M4V0;8!Y68. V4%>63;R38AK42,>(/"
MAB>S\,U+,";&&NP+]711;"'9UI6?I\>12#U>F_@&A(\<S0I]</6B F+@2+BV
M2S' /'-E&V-NCO(30CTFUI$$$4PK*A:XJ1;0.DYO!)(F]@'V.>JW[41L^G'K
MJV=/3Z%318!8K^"I)#"WKA^$!'T6Z^LCU;.[9V1B&V'48V&QQ97OB'CH[)FR
M]RDO;NV'2V)\DWCV(H+?F26?2II?+ZN4F<'?^[UUV/S4;.D*XGO^*XB#[TKK
M?=_')4KA%VA+R/U 0^ZP]"!8#])E!I;O#$K+9[^0>?V25$ZG'0O;=5)ID%Q_
MF"2HI[!EQWCO6';\NQMO\FO0^TI57&L$_W.H\<]1B\E6O@W\JKG*1]-(/3LZ
M#J(X[0E,=#$*'UT;14O0LK23HO8YLFT+FWULC!NX-%0E&9/=_Z*DQ!J&2@W.
MP J%J:7_W7J@ 5X?*5L7M%*]ZIFTX*C>=C?6$,N#_X2M)&!$:$ 1I<;1LK<X
M+U=HN*K'F;3!C*?[41)BMRU#CN(SM$V0?8K(RQ\&QNJQJ)P19C*H9;CL(T'N
M[4/#MNO;E=C73SS\]0;ZPH#B[V47M#$)6H%75?'&7A,XK"15,T4T2UT?*;M*
MC5>HVW!4CQLDKY*I2+:J:1HLNRR-6]&T8]JUFLD/A2A>-0RKCY)]3XM'Y;3A
MIIZH+Q$YH0/O^=8*OZ$"7I1@@3)']K4M[K"!B;=ZO#)1A ">#>Y"C!Z1%Y"^
M"TQV,:9Q!GIOI;.,"WWUN+8*+0 6=\K 2@%G>KFXQIC&R37Y\3D7^MW;&GQ9
M.0C)*S7XG!S@ <#\:(W"T0/  _Y(F_WAF<G)#8EQ.3<J?<48VZU+?,$6NU\:
MP$E>B6%U%6)5E1$&,O%=>R\ A>:J*V1O_, +'B@)7-[YG!R3'VF+$40]ADZ#
M$ #QTQL-]@O9SY:-H;\!58L+P:X1((2HR2*A13A9*S'F/P8K9;,/=W&6KJ^B
MW<Y.RA1.YLD_+&"BW;6%6F[<W0X^BU-6S2:J/(*3LA)#_AK(JNJTXN-*DR"Y
MC]>)ES=$H!Z,469QLD?BL0$7&JJR;(_=H0"9XW"^.%B9?&,=@VKNI"'-K62M
M%S]*[<*IGD$\()-7@;A^ J!G.( 7EYKUPKM3VG,<6D!NU[?"%QU(%HF6(7?Z
M4=FBWP-%V^2M03*5TVVYMVCX2ZOXV#WI@+IO?TI)%G/.EZTN^A<#,<IV[?%5
MH9E9?E,A%@QM'BD[]]\C_UIIT ^G%KL=?J\5/*0']Q'YJ*WW;],XV24 _7*I
MG5(JZUFN%IHMPV57),C4HMWVY&Q5FH9/WC^/W):*MDQ;5(;)+EOH7UTVTDF]
M?7B0HA1U'N^X;8;L.HC^=R.+>NKQ.PUEZ2%[<8SL<*4.;XT%W3-=.2[6>J^4
M7R-O9RUSHNRXA,EO3M05/,O(&E$)\XPU3W8HPF09'^(*<FR.8IXCSLHPV2JS
M$>J&\LP*SY13<B4\3FLL<,12LA4A#Q>/II"">ZWAMFK>U>2\32;._B'9^[TC
MRKU"C4%KD=->()!71F4L<_Z9I"X]N^]05]^3K7OZD:ANN:6>=%*H>I2V4EKS
MM%=@=2)9KXG9G9FOU^'8G%5HSNCT2.I$4FS=@=^QGGK!4\L[Z!_X^W3@E0;I
M4G(]> P(J7(!TER_W$4X<-\GA$>@T1\9C:=%UOC_@S6A^$*0-Z_0(5QNK!!=
M6X 9WSW\MO&R=>;)S*(30CW&31!H?-NU,H]OM,4^P;\8W*-.DGU*=C(+.4C2
M=?ZO\@+JU/4MWVZ].MX^6G9:_GA>4-%2=3.E(**F]VOY-A;W K+S\2=O,D%2
M]5>E=,@TLJJ4BB-EI]U/VF@TY,]Y@-E(^6O+P5WSVZ]?P*#J&-GY[Y.HW8RP
M@@?%LG.?W=T:.(.+<&QN5)EJ,!6J;KMK6' RAT\NHCVOENRGBK;#=@1G,E!<
M5;'G)?W">K$WR/X&H,>(G(S#GQY":\M7+,L]6WKO@9-8)$HE!>T=*/,0NZ,3
ME/Y7]_,;8B:RD?N(CS[;-2/?;.DM#4Y6C")4>A5,QCZO#Y^C'HXRIDEOI= !
M6QOH\BKXN0C1SG(=YGUN]DSI[18ZX&HS=5X%8RNOM^.CN=I#X<?H9_IZTALS
M=*BQ>2BI7@S3B ^&OE!YG&$F* YMBTCO[]"-#-!I]AH8W]2M?O^NJ0CS&0M)
M;T/1@0!PT4X](6BA1'IR>5JJNW$-R:EN&R&'7+@@15P3M LBE]&OHVV*HHEP
M"N?JB7 Z.=235M"II%1D%9!+:OAV#,<E3/HL17/D GSD((J"'FE1_-)SJ/3-
MIEL4;P*'C['\2RB:1C]NMW*1ZQ7LWNLD<O$I%DH? L4$RGY#>5Q&;!5%4_8G
M[&X.HKV*W4Y,3BD/@/NOLG,FXBLIFMT_9>_S$>\5J(!C!$!@#44+"4[8_L<P
M7?;F;Z'"O@3IA""C<0U5%)V)=AG[C/4,*VU0UZ"F:<E^SNF*!A\4CE)4&I-,
MZNFQ$LB!_[!"X1:7H;0SMGV&H@$(/R]9Q%!0(Q7%3X^B!!?/\7*29ZZBX<9Q
M^Y-.(/4VYV(OC7M\<2]9CA."^@Q%XP<!1C*(H>#F+.H3?J4JLO%Z]_6/4Z:J
M*]&];YH_"T^N:V0O</,X\,WS%'7:Q?<<G3 J<K11Z^/G!P*?O*XN:A5+4Q6M
M,S[5*#:01SV;B!''_\?AXJ/E(5)@%,6A:\?((6=(OE/^06'D H4N/F.LYKRR
MB\_:L[VQ_ =D6C'2UFMDTZX!]PR'[$!)#MWK_59$TYU*]@I7F9BT(YT3B-E=
MB* R,6DJ63G5FB)HK(M(&_Y)Y-T3<N)&NR"RO)LP2';X33DWLM-6@<@Y= IL
M5[<JP"8[A%)"T%5@!,\&4J";!/&D,E\YS7'N02^UE?C(WU:BN.1_6D"L7P;Y
MRI>=XW9M16Z$K[R@". IW\,L(?0C((%YYP51$B+XR_5HJ2\'QG2P,+6E-E^-
M5KHQ[P/DI?O@NVO7QBF&M+B1]+?Q7+NHB4O _U0%?JG?S/6I/A[-5X/1>&S<
MS5?Z_&:P,&;Z6->6?:!!KL.VP/MS%=Z9-EKV Q:EPK\(XM7;*H@9&9<#4QMK
M^I?1]4SK ]ZFTO42H%=50/7Y%Q!7P^R)SWE.;)\+ R5(>(^W? O,[ZHP+TQC
MH9FKKW\?:/]SIR]N-2RW\TDJ%[\9LTD_J(#:*A9QE&!^7X-YM (P>P'L)@B<
M)]?SR.N#,9@P/(Y<,&\!]H<JL#>&,?E=G\T(57709O,;'21X,%HNM7YP.!Q?
M5PK=2H!_J&D& _362C-O!Q-M82SU?H!M*NDIP?FQ:=<M5[=]2<1R$X3Q, 9Z
MPI*HEK,KP5HS;<O?#',U)$2=Z7,-&[FQJ4WT5;]R<-\";\V:%67@NA<@P9UY
M!*6&?SL/8E0M)R^!6S-F8P-DP5R1_34W5AIHBJ_]F8M]#7PCM.]J=DV?CXU;
M;; :_=&/O4@A!->>',LV ]E@TPB08"- >$=F+Z0D?JNQ*_OO)3!K9FRY,L;_
M/3 6V%7LA9AC:^?&EE<^_RS!6#-;X]%"7XUF*:Q]P#B'&+&APUX+36N6:V[,
MA["C5J8QFV$?%HR7!AYY3VH6/6 C@)R"4YY?,"B\ XQ+@0#%8.O:8-[PEWR[
M.7!Z5S-P2^T&6PUM\O>2USZ^ P;=@KSK\ZEAWI+H@QAO#8AAW.IC; ^U^42;
MC[_V0HGD/D)_)?AE]L=6L_BN9A:7=]=+<.FP/Z=]Z<TXTB(H:B3UKFXKZ9'4
MX+M\O>^E8[;"-JH%+]$(<?!=NEHO6*6A(@W\EH"Q5RCKD2,%XO<\\6.OX!<"
M21K<M'"R5WCI<24-A2.BRWXQ2\-,&@IMP6:O<%*B3AKL@K%GOYJF$H32\. (
M17O?P%E,2@.;%IE*HO5]3 .X9G++X5[/--Z'3S20:]:T&$1) #B/IF@PUTQH
M-:;J%>YB<$6!^H>:&2V%6+V"W!;'T,"O6=/6:*9?ZI\0UM#0K0?$IP<WO1*F
M(5TT0;'E>M'<"G$N[['YQ.*'FL%N3!\-OLM6&^R7ZX??]@8Y";Z[E-Y8Q-6-
MA\; &4S-B-6L^7+\FS:YFY%3PUMM]9LQP7\"?H%?JY>QE!\2\3&O'I.S@B-)
M;,0Y]_#%6),NL\-@/4SR/K.9;[QO>D#E:4.4?GL[,K]B1IKZS6^KH3$=WBTS
M#^W@*@]F^NA:G^FKKSVS>"^^=[Z#\^L)UETF[-"\V).*;CVF+XCPW7RB+PF'
MM0F$9L#PQ>AKYBSM<918X#+#MTW1OEJLS.4]^@FE/0S_"C(+>7BAG(,0K9Z0
M]XANP19O*.4WQZ\HNVY1E.>5<I=32:E>E1<O1E^1%:Z>@M-E8K^0[*K+GD2A
M0KA7+@'PY3/HP\)2LLM%^Y2"(O%>MQQ,@R0\CQBD*\FNI>Q1"HJD4[)F,4T9
M\+GW]7J"+'D@.QBK9Q2H?FSM!*?HQS:F%U1P8',D(43!I10%9.>(<E>%,4VF
M#JJS[2:D/N'5.D&VH\G%FXH:86"OGLD8>5[PA&^+38-P$B3W\3KQ]EU#0[1U
MDRTF .GJ<D"*QLYC%Y3M3![%[M.HI^C[B7L57,B*TG3OA_HY=$'WEE*D*NC<
M'*L7JHHMCY+;#36#9.KZ;@2\P:E':@/DYO&R]6D3W6O-2VFHJJ<]]_#^'H3?
M<,_MP&Y^(***7V6\;-TGPII&5!5FC6D]W5HQ"EW+P[IXF>QV'J.!.&NF[(A7
MA%T,])6,7PX6B%[G0C5*M>QBR2KQ5+WT>8K/A2@]E/MP5&F/[# OJ_>ALK*6
M/RQQ,B_^D9-TT:+8W>*+?<77#+-7%ZA(47.'VG*EWXYPUF5T:Y@K_7_3W*'V
MQT*;+S59N)9JGART!B,=HQG(3*T$BHIY/:-8P+Q2#S71IOI<7^'LVA>ML4"J
MUUU:$E;&=JPE$JN2*FW/[65VFL0 FJCD4E.&!\F=WJWN3$T! ::4ZO%QLG9&
MQBK:D\W@:B4?E9W4D[.FLCY)BK:QJ30-LX_4N!2;Q-77O$KC4 ?8,WYYU4+Z
M^#NV^D$4%<J,3.3AG;H*4ORSTP7$2X*:%U2H9@#W8*IG'H&Q7);JC4QM1C;Q
MRL@)E9VA:A)IM9>%J>6&7RPOP0TYTXV<-YK&!#R\;0._2[8[5AG/QWIE5D%.
MIB/=''P9S>XT4K&4;?'1&*AB8ON,J9=5?N C#OC]W>VB_TJ?0@$LEU+[6'.J
M2J6PDC18X\5-/GSJ_E3;14[Y^CDOC\1O)N[;ZE%%E.HSY762L(U'>.MF13JR
M=B?&:AQ _&DQ'/N/]5JKDND!9,;&%VT^DNC?&TD<@<^ NYE<6QYYRAS0HV)%
M]8^,N]42_(4)+IF['LU&\[&68MHK?L7R<[[MQ;AW+&M/-=]%YD.)^VZR?(5!
MVE!%\-MI$+:\14T3R1^IGA#X 5_T);988/\+U?H';_U:FT,<MOI>C0/\<1*&
MH"^%GRMGS9/:!3&%;8H<%%J>.%+M$V4?^_-QJW)\R4D.]8Z=,\!)DR?BS-O'
M<),U77:^X!2>\I%&6<Z" @9X_"-V:.M$V>F$DW8H@QSJ\7&"U@A =X3-!W.B
M"EAE&O-HY%CS95L33NY5A%6,.NK*;$EW'LUCOE5DVYC3."U"*77YG6G7XW<S
M8[YLRW/B;N:BCGK<%6:GLMKX*)?A+/SJOT+F& D]"57IQ1<FL@/?=KWT(BP^
MM=S?_Z<>-M1S#H7#!A/?8A[KL^PV+#F]++8'D'/*ES,,D$OS"84D A57:NI@
MHDTU$R<)\&%*GALL) N^EX7N/#BTV,?YIK$5AB_K('RR0GI5S8_44HPY9NA"
M,T?D0C#)*8U'IOEU:IB_C\R^2VKJXDH_#_RQED%HE$QI9X#X^KU-FFC#($3R
MA'EK"RK+J*D#?!-_3))8$WUVA[-[A&V%OA=R)'3DQ^[0P9@"H;-6&%0LJ:F$
MT7RE#PF"^A?MT!^C?VFL,(PAD+5$0KTKB6RA++0J.;R(0&54O=E:@5'%!B:#
MT1C8E695)4EA ;M]ROF04Z;C22VK*.%YR# 7LL=]XUQH.<,EG#^QFL](R@<5
M>G[RX5'S5DH]0.7O,( M#MW[A"EQ/]%]$7VY,O7K.PFRU=8;B(\_-8^#TB5(
M-J],M O"&&<@LR9"=(912T!-;6&8*Y)^S!H%25.#)GI$?H)N('H)+5)[=(<K
M/]-#%EQ5/K9\R[&HN%*]$!.W/P7U=Z/-L?=(:HP&=[CN<P+;$'ZP)"[*>#0?
M34;RRAK\AZ&'JUVSDJ,0X=,E0H^4 $")(F&H]&"4/LQOAFG%:UYO9.(R@7%.
MFXP2F"AE,O5+FQ,Z9?%M_GHIQ3EZ9LEJ4%1N$LQ'@;J[5&T:W(Y/=H* _W5O
M10A^\G]02P,$%     @ .7"M5(G2OIP60   "RP$ !0   !F<VDM,C R,3$R
M,S%?9&5F+GAM;.U]:W.C2+;@]XW8_Z!;-V)C)F+<5:YW]]S>&TC"+N+*0B/A
MZJG]XL"0DIE"I)J';<VOWTQ $A+D P1D8C,Q,5.V,Y/SRL=Y_]=_/Z_=P2/P
M P=ZO[^Y_.7=FP'P+&@[WNKW-[>+"V4QTK0W@R T/=MTH0=^?^/!-__]?__W
M_QJ@__S7?UQ<#*X<X-J_#<;0NM"\)?S[8&JNP6^#:^ !WPRA__?!=].-\&_@
ME>,"?S""ZXT+0H#^D'SXM\&G7RX_W \N+CC6_0X\&_JW<VV_[D,8;H+?WKY]
M>GKZQ8./YA/T?P:_6'#-M^ B-,,HV*_V[OE=^I]D^G^YCO?S-_P_]V8 !HA>
M7O#;<^#\_@9_-_WLTX=?H+]Z^_[=N\NW_[R9+*P'L#8O' _3S0)O=K/P*D7S
M+G_]]=>W\5]W0W,CG^]]=_>-#V]WX.Q71G^UP_V$[.!/;Y,_9H<ZE*4S0 ?.
M;T&,R01:9AA+"!.B 7$$_NEB-^P"_^KB\OW%A\M?G@/[S8Y/,;%]Z((Y6 [P
M_R-&[[^Z=,&S<^^" +H1!B=F\EL\ZNT((B%&(,?S'WRP_/W-,G#05]Y?7KY/
MOO&?1V/"[0;)<N!@47PS>'ON]X>FBXFV>  @#!AP%(YM$IZ9Z0,O? "A8YEN
M&> *)]8,*=Y^8(T^$^A+#1T]:Z!X-CXB?/  O,!Y!,EO&7"77:9!+$9F\'#E
MPB>6'%#G- C?(H36SP?HVNCT5?^,G'!; E#RY-HE.'#0]V8^"-"7X^.'*;K$
M&753TUEYSA)M"B]4+ M&7HCNRQET'<L!3*[SS*T9W@E 1RX+L.-!-4.0HAK,
M@06<1_/>9>UG\H2:(=.\1R0MT&=SKF!DS;#,?+@!?KC%&VN#-QPZPV*VX W'
M H]O<MT0HY/!8]YX)Z-JAN$:0OO)<5V$KX;VO;?"XY0@8-_$'#/KWHG06QG
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
M(O;<(%G7IE?Z_";6->(;6T6TT&^T$;X%U>E8G8Y^M$$(4D>8(^1RE^'B=KA
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
M$-!5<<H486IY:>Y 7I0DU<#W$"=WS@UZ;:!CV-:].;#0DP,ACFXU)[CUX'T
M_+@Q@N9MHA#]&7J6XR9AHUET69I3<U\4HXFS>4Z0D88H+I]F_G)D3&8-718Y
ME#KID^(*99:!94T59!=H_#SA=B9+7T>; GN!VC)%N\]X NXCN$%;\8'VDCEK
M75&5GVMXS-: N*06C'*8_0"F;SS!NB0D7>[5"$86WQ=Q=,0(H>]3M-^*"[XN
MF=AC+&E\4GF4KF!4[8U!6>]5R<0>88X(J(Z(1"8^JA:10&-?ETCL$":)A.C6
MIT>I;X6Y;HQ N5S7S)-$-U)>FR3Q<Q26<MC$^6;+$0-'@94[R(V]AC3V\#*,
M)<:I\=),C"4\\,.,(*"?3H4 _>I.?_* 'SPX&X+%&XTY&2)!X!DWW2$)B7;>
MZN4X0#0-9L$79#$F4K" PBT;=1LCLI0FT_*,:#5/;W/(7)NX%CTWKVALVY9(
MBMQ"#E"[I_(/MS?FOZ#/X^0LLT@'+X4J:'9/F3]@P!,;6GHA08[+"CSC]P50
M*":AAU(0ZZ6\'$6)A]2.PU$4A' -_#EP8_,#ONJ8+D/*)%'.PHH[%I;!2]+S
M?=>O= &7X9/I@Q,"\/9MI4X7U6VW)KYRHTA\LDE[A]\&8!FY$V=9R=9ZF"VJ
M_/,9IA9NM#A\L8*#C2?06QG 7X_!!@8.HU38K[30XHD^O1X8ZOQF,%9G^D(3
M5P+NS\@)MS<@?(#VH60)#;'/[Z@QT_^XU8P?@QO5^*9CV_!W=6'$K6"D")/N
MBYWUQ<YJ+!G5%SMKGL9]L3/Q5)52492[V-EF!OQ(*V-))4UH6U?CJ6Y&!;;N
M0X-$X3DPW7#++!]W.J[U/#XN@A8!22)DO=W:KUSH.[89IP\RB%DXM/4VR&QZ
MDN$DD;1R=^-"DDZV*QAH'G7''X^YN_PH'16+("3N[8^"W27%>@SE>4^8</=>
M4.-H[M<Q%7 .';J&L[<0@CD((]_;:92$TYACIL0<*(6!I'Y%$@*FZ_P;V(?J
M_$C#W\# I!2;++N2Q(P]"Z.Z#<Z$,A4[<%3763L>3GF_W4!O!+T NNBR"RGU
M*CBF2LR<<BB0N%&UF4PA-Q3;CJEBNFG!A6+*YX;)364"N,1GJ.CV/&BW!C'
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
M1G%-:6^#B^L&89SV-YF,:+0E#&X]%IA-61JDQ$.C5F6EMLXI;;\SSNF<0HT
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
MQDK8.X /D!<DF2()2)+3JF7INW*FBE']SP+K!4F\/.0DR7_5\OYUR3_>Y$F
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
M(,>1;ME>(>=J3-+"K,<CJ9#WSV]")@2OI2SBPF>MZBPEP.SM*<NGJ?HJDKZ
MJT\N!U9_Z^ZO(#ZR%)*0>\&$Z)SD?/>(G"O/GCYAOAX1PBI1L[%-$U4H9)WF
MU^O@=G+K98+>^6*#3AP6$JK-]]Z>Z5SVH,,/\[7_F]_RBHI-0 >1CM(%]_#O
M\<OHB6"LS.%1";GR)VJ M4\1);SS1 M+N"P3OZ!&$II_F<4I9?J8X"@N;H.0
M;R9K7(Q:W&GNGP%T)Q-0(>N=0Y8 Q>,5:42]R'VPO:C?^#$@),ZO@_2+TFN(
M(JY\A@I<[3'ZOWO_UAI0_>];BB$F=]D(\RZ.Z(,C/FG6?VBEI*OO;8!:?W:%
M&(BOK\<F7BK!I5$I?EXRG&O):_^8X[_OZ9 V>:;_RY &JI1VNMREA]Q9[)*+
M>J>2'3[AM$LCC;CX.3-'+T,G[9*70M8CE=0+7U)!J#32'YGJD^BBH]-]D&;C
M#=X^9,F>I>CHED(TLLYF,2:XS61&)>B=$S;HA*E-)8]J!9!K*#?XL9BF>4'V
MA@44F:#;@W(JH-VS<7TI[]PQ0A-/P#T6Z"!YT4LF,-G.LB!5[^WV!)QMZ$J!
M-;NXG5^]?V$E)+'$!-DB)N5V?-"NE>N$?8T0ZC5TM:13%CQC\ICE>&8Y5!B7
MV-_'6/%30&)637U))UZ:D4(4<SE.J$"V1XF^C'</8@#6ITLMAI@<K+D*NP"'
MP]?.4@0IMQ7KI1"[U>D[(F#X(<<EWK1'I2IN.%@ELUD?\[@R9EP3@[D:9KT.
M=OG5T-N,1'<9E2T7XEDJ?I"JKTW7BSM+O[  W61A:&1!<,("H)"30540UT&E
M$JJT+LN51? 6;G#X94&R H<LE*'_>B*!_.9=*PU7C+&$7I/&( Z"-W88Q;**
MI18ZJ*%*[\+EHEBNX2\!B?@NP(KL<_6^O$;66:$H$]RF2I1*$ 1)3.C$B]U9
M1BA7* <?K@+AON=;'&$2)#]F6\QFV0S<*'H.Z$?,KPG]/YOY^O;'V37_N_PJ
MZ,$MN+HE^DC3Z@ND!ZI[Y^7QF(5QL&P%L6;*M1?.V;*%B\Z=CJ7L?#V.TS!.
MTZ"(I>YO@)Y'>JK-T)!25()*12522P)F:W1HX,(Q&?U,<9YGY.V>CN?S%+.+
M&VTF;[:*SB*T088T@9J5EG>>#88J3OMK9<2T$55'3!^YFREV\1]',U <.X)@
M[X5=IU#+,:T.Z6&4TQ8Y=RTI]VEW D0Q\ZX1 4$+-2Y=_AWS+GY6$G0<L%'R
MOIZ@9(A9 P1AK&$.65BX.)^$+$,=CW3"WC([E;Q12X+@BQ&>38JG>WZL7C)[
M?K2$O?%# *SD1R,)DQ]]>#;\H#H0EJ#&69IG21Q18-$D+>(BQK*:/WI15[-V
M$]AZHJZ2\\X>"W#BD;2#.*KE_:\#+0+"#N=KMM:44J[8HH%8$T4B H(C:EQB
MB,(DS[Y7=J;LBFD:9EN\"EY'^V*3D;AX8V>=-+DX.@67.1=FX.WT"[6T=S99
M0^P3JU1 5 ,U*A_.>53M7,4U@C2(@B5^QND>CYYP&LK=D86\TU(;)MB=BALJ
M83#T,B$41C4NCRH%5&K \UX%)FF05"@?,'F.0SQ=/F@)9M1RZ\>L3.@Z,ZT*
M&,K9X13=6JG54*_20U]337"%MJGW76 29Y&N4D17QFF%"!F\3F6(M@ 8YLA0
M":GO=-PKA2YZGN$E6VVR?4XGAZL7&L>]W<<I&Z1_P8'F)F<+)6?G'JP-:,Y"
M&#6\\V00S#YQZ#?^\X5K';:@;6)2O TAC$S!!UG4P&5$$:7!D40)423(]]\Z
M)LA\F%-1Z'BCB0J^DBE]!9AD4:"4\.6C8[X\L-AH,&-D6MXXHS9!R1I1!29O
ME#@ES/D7Q\R9L(L/!S-'IN6-.6H3E,P156 R1XE3PIQ_=<R<H9&O2LD;;P9%
MOG(-F*RQCWR_=Q?YWF;# E^9O >JJ&%+6"(*0R.($J'(C3^X"WHYJF$QKT+%
M%T,&1+Q2>9 \L8YW_W"^>/>$'<Y57"1XOIZF4?P<1_L@46R+*^1<[7)J8=;[
MG%(A[R0Q(1/6Y)@L2T0_2%_TRM0LS?=)$:2*"VL4,LZN4%7!:ZY2[0MX_^ Z
M5+*\ATKNPE>L;G=)]H:Q^B,+$LXN3Y5#:VY*[?X,XO/*,0EWH-92T#9<;C")
MGWDAYT-!HV6<Z^[_T*NX+3EE!M\M/J66]TZF 2#%@E2UBJ.R5 V=^5'3^8XE
M"IN]B438N6-1 A9\C"#IG2%6\-2>ISP67*I<=H1I#64MF%9!A4S>0X"AABT)
M-D1A$%2Q0:@+0MI\N71(DNX.-X2K'8E,RMV][DJ(AXO<!1$01%#C$IS%??NJ
M]LM^\_E+B@F[O)AGJ-!'+JB]FR#'YBL?[%5=L6.H,35E;/5 \&@@V#ZY&G54
MZZ.Z@0M<,2'W,S^/%VKWTOK1F5<1 #7.I/D%Q+<7X BN@PI F]PT=^I=[_,X
MQ7G^@)_8?^HN>3;H>+GA4 =?>LNA3,$[C8:@%$K:5"+ 4K$SLF/7(.%1&O'[
MD?2)V"IIMS<>:B%WKSV4BH+AD1Z?&-E6TOQFJ_(VJXN.-=?CQ4@YUK1_=#76
MB(#JL>;PB_>/*X73_Y9, ,*.2>/)/F%V1GJWB4/EKHE&UM7.B1%NO7NB%/1.
M#QMT?;:TQ2XQ?N0X_/U3]DS?_CXMR%M)F^H_.&LX7ZH__'4\ZIG4_L$%$T0@
M[+,?_NK]&PM0!%<^NA_=C"[BM#^G<8&K@\YTG!@]DBR(E%Y<*^W*K5M KOV\
M1M3[5[?#UZ="J5&?,^=W5G*ERXP.PWHZQ2<G-OO!94\_ &GW],\/WK^Y $7X
MO/?3U>0&/:Q&J\F#QX'^+OA;1L;[O,BVF*C*!<B$7 WM:H#UF"Y*>/_\6EB"
MTZ]D+GHZB?Z&&S#J-"JIF+/4*0W()EU*(N/]<QN "<DO3!0ULFYR(HR;F+XV
M+O6;E8"^L!22:E/RLA_U\RY+)Z^8A'&.L[753J19Q5E89PF^B>T,\B#(80E2
M" .H&JKU6#[<9;8FI;%>A&,>'_S]#^R?5^4_.<7H?_YUG#UC,GK,"Q*$1<]@
MR>\NR*.$Q9@B_.B=%BI$XOK=,Q_\*RD?'_LF"WEFS8JV*K&B^[.K3RT#57_I
M]F\@/K0$D)#+5(GP:UX]?.01?7C$ -PFP9/$A-[OKCZS%%;]G3L_@OC0,D3]
M+]W((";D\U/?X#PD,1]-=+9TQ)Q_> E(X?NW9&#10 2F9D-+UJ.37^*GF TU
M#$:SXJQQ:0IYU\. %G9_7) *@R".#4+ER-%60HV61RZ-TG3/ZO;L,J*C4%?,
M-7-D(/N$:<N XHD$F)(>I2PJA3VRXC_W 2DP2=Z,Q! D77-# ;5/CYX8*(;(
ML2E)THC[Y\F*!&D>,V=F)(HHZGP:H@ K3$EZ<J"XH@"GGJHT\O[9\K#!25)5
M1S7R12;LFC%JP'W.B)*@6*.$I^0-UVA*V8*BSN291>TT=+(TN"7ODT ";!V'
M&F&P-.HCM&025T-,SR.;RF*"-/PF)AX)DJX9I(#:YTY/#!1KY-B4?*DJ/7)Y
M&$29I)$531HY/R3IP913I!("2) N,A,]J+1O<MS&>1@D)9Y;^K=^XH5!UC5)
ME'#[1!$$09%%A4Y)F%*AY@U7\4X:5GC%CC(M23^$$:#*Z=*( 21+'YN)*DS>
M&U'&>T(ZR-6CCUK4V6:N 6RSKZN0 T$6 S@QVXN+=\CB<32:L&MHWF[C!-_O
M)9DC<A%7_%"!JWG1_QT$'Q2@A$0A+H:8'"H%O7W]>E<A+=B=($J3^F)N62 '
MV65"5P80&Z3 %(PXR/(K6KRQ8DR]% F2:1KAU__ ;TK;!#FWO%# [!*C)P2(
M&7)D"FI4PHA+(RKNC1P+$F\#\O80AX9A0Q1T2P\5T"X_^E* "** IF!()8T>
MIF/?H\HJ>)U&E+#Q.@[YAK6!*4IYMX0QP.[R1B$,B#YZA H6L1M3NEJ^R<2N
M,"M/.=?I$N/RA,TXB]01BT'++;&L3.C22ZL"B&0V.!54ZZA^*'-:4$90U0!B
M+7ACW2B*Z,O*J_\SBU/\4?D.I+)N&::!V^651! 0F]3H%!RJ)#_4_T!,A]W:
M#(@XWPTP]SO_Q/G.ECC?@2;.=\<09_62 2+.]P/,_=X_<;ZW)<[WH(GS_5'$
M8>?Z?%-G3/\Y)ZOL19;PK93T0AL1JI0T!S%XE!&PF0C#%%A\PU1\4X4'6W.R
M(-ESG(;J,%HE[H4T"M!2YO1DX=%'#M#$H29(KO5\$ZD*UHV=I1;SXVVZ(.6N
MIBK; (XH76!&)U-*^Z;%(LN+(/E?\4X[29<+>Z&(%+"4*!U)>'21P3.1IM1!
M5,G7I+NB+=L D1Y7Z_WN[LBQ!-;AR''K1Q!$D"$2CQR7JRNED(]/S;A*<*#P
M#-V?G7UH":CF.[=^@_&914#"5^;]F\KXZM"SC.5:;;)4G5P@BKCZVBIP]1?O
M_P[BJRM ];\\%T-<SN/*_6N!TUSNREN_.1OI^W":@;W^ <07[J,1ANWZ=P]?
M]&<2%_3IXVR[W:?5SI L!U$AY^I+:V'67UTJ!((!.F1]-E2RJ"OL@1H/61*'
M<1&G3W=T<DKB0&:93,@5*=0 :T:($B#HH(0E5!)O!%$MZ8$("X(9&3']&/S
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
MP[!&4%B=>PL@3807)-MA4KPM*.!BE$:3O^_C'5O540\Y>A6W#L8,ONMGU/*
MW(T1I.AU2I4/"-?"*$@CE. @QYLLB?(/*,5%-9S]Z>3A;)V7NP ?OZO8=/LP
M_>MMG,8%GL7/.%H$!87PB63"N2>=H OFF($ROJBEO+/$"$W@!I>H0YE_@1+*
MS"EA Y;%-6,<7<9/FV*^_IQC[DX5/<.@X]+S6,%ONQZM@G=6#4'9)QB78GL
M^QQ78UM%MN^AD&V:%A1Q3&=XY6A-/>GD-4SV+*'K4Y9%+W&BGC#8J+J==]D;
MTYV/F?7 $'$ 6''^5JMVV?BO4-C87?VZIU]\P+)C6]S?RJ,(6KWX>) %PRX#
M0/'^DO0)%>UUR(I2?X9"*18C%F]WN-AD$5N_R M9.2^CM$M"&2"W^:00!4,G
M/3[9^E(E4='HX[=0>&08#/T,>+I!#=S 91B<ZI_AC4EK3%U@Q'*-MW@5O#;#
MKM*%JA7<CDLFX-V1224-AD!&B$*B>*6 BN"UC'AJMP)F'Z,T0;N YF/!4;W2
M"'&)4;NV""JY9A8'CW$2%S$V95M))5T200.US0J)&!B'H<8FQ+$'27A,L<O%
MTBEXXHU%5I9:VBF+GC%YS'*L<S5&I+#3M.H]_47PQO;S[5(R^L(^DC'D@&5I
M&%U),%Y("T^9>K$KI>&PA^QQ)/8!M<TJ><<<TL/NT4@N#(E)6H02,C%YE( ;
MW>K(?(F?<;HW>".5L(_)E!RP;"+5E03#(2T\Y02*E-) V$.G?MAN()-*NN2-
M!FJ;-!(Q,(Q18Q/7[]C$G,VV,;0!;,8*7,[78TKFV)"/*A=U&T*KP7:#9U$.
M#&TTX(3S4IN,%.4V FV)WS44<K5ZN>8CE.6:[BYP/1"_Z0EE4O*W.Z\R0+T]
MW]< 0S<KF(HI&N)E<[*4$8\G!C41TQNT_7JVX<;R_F_PH\F-R22=>C$UU(X3
M$\7 D$J-S89)K;W1Q\:5?0>&2;9S.=^3.+O9F^=IFW&EVGK2ULV(A3=U4SA:
M8[*&A1Z @5"?OF%4 N.Y;)$*"^&PAS]A"[#5K0;LR/:UO&[+RDW0[LUV5<"0
MS@ZG<I$A;J:/ @'A;-BV0P*CSU,)^PK#]-Y-+@F&75IXNL0TV,&7.5[P%FX9
MXBRP 98VLH*WU<LK:K*S*)CD9<*<L2*06L%M'2 3\&[U'Y4T&!=CA"A6^CDH
M_/,__>MW'__E+ZA4!,*M5KG7GX)DWR\IJ!9S6K5# ;)3P:,G X8S"F!B98]=
MS-Q/S@3K\>A??H=&^V*3D?@?./H!_?';#]]^R_\_"LMBNWE99?<E+C8H0+N
MH&?V#+:\\/]]^_MOO_V(<!!N_H(^-HH[4H=3!MU2M;S#-.)GXK)#+=\?Z%CY
MX?L__O'#=W_X$_J:<NM;_I?O_O3MAS_^X8^_Z\(#0O51%/'R6D&R"&(:@U9O
M7+67JI)VNC^MA]S9G9:+@ND&>GRJWA"G"+^&.,\9*QN*0B%4&.ZW^X05%^:W
M@["['PC>X#2/GW$YQYEE.9O9S-=TLJ/>M!_6BN,$B6-,[*5-#&D"#F&/PBV_
M-B9LZZ(D._-5>L=3>(F+($YQ- E(RNX(:!E-I]UQ&*M"3!M%ET2U-Z3-3;,6
M&#I:0Y4D^=2"=$0OE8&P3PRGK>-NWQ,9NPD,K!FP$I]\(IQ+YBZ8JR'^GQ__
M0OU:6M!G)^Q*D9A=*HQS*/FL=W%*P^;J?F0*2_%.1#&7O%*!;+.J+P/&(RF
M]<ETGZ57,IXT1_C G.02^P<=YLN#TXMRVW94%"1^W!<L<6F5L47&@V$&HIVK
M<;]N[Y07HG>5Q[0,W;V>8)/<)8-?3FJ?J$DCZ_'=K.;K9)/."-4Q)YD.+*I:
MHC4ND/-E(?"D%*ZT.JRIF=?L1 U/*Y\JZ(I%T+XXF+#!C%%8#*H6$\N+Q:IE
MRZ#1@L>R14#FA!?YC_B2[P(3;JKYC:@U/;'.9(J"?2HUB"PT8-6S$=J:Y*)>
MWA_B[DQ*CBN?6AC0*X&JT0##."N8DJ*H]6X-;._7M6Z@ [15]L?#(6[03A,H
M+P<Z0X&?T/RA$&V4^YFVL4DM[37FZT+6QGNE*!ANZ?%9Q7DQUX#*)O6UQ78J
M7GFEN++81AXNP\S7%4MIEEWHGN)3*F^R+<;FJC!#RI=2VFU]32WD;DE-J2@8
M7NGQ*0ZV'NYU W>#6W6<^Y9^KS%;=*30?HZ+S7A/N\$6DZ9"**N&1/\G4N<K
M'-62VZW@HTWM[@T/;@8,>X_'+B0P!@F8!*YQEA?S-:L#R%<M,7F.0YP_9(DZ
MG%,KN!UY3<"[XZY*&@R_C!#%,3?GA:YS1J>ZF/X']"_HGX/M[B]PBCGR<O +
MDJV5B2\=":>U/$5HG7*>AY]A[36(P(3*GDP"[;@($!XTQ^.JJVM,U?@T\EX.
M+:I@2P\K]H7!N!D30B'9KI9'$UB7"-%1-"#E9MO/P9/R3(\HYG2W7P&RLV_?
MDP%#%06P/D/X;T!(,5^OZ:A)<I982LDJNP)>+^K4LVC =IR*1 X,233@A*S)
M:!NG,?,V!4O9S2MZ\0WO1YSB-9PK-3]1."1(IFF^)P']D)7O4PW'*FFGL8P>
M<B>ND8N"X90>G[A04(D!X4ZW#(">.0I9?T49-*R1"H+AC Z=O.!"=2GB16X?
M&V>4E$DA+F'W?W1URY@(J+Y9[/"+]V\IA2-.>VL!(/V=S<-PGO-S6+=8&8B*
M8H[O)I2"[-U'V)'QS@<#,,F]@XT86F,X02D[KU2-:8;A0";I=#!00^T,!:(8
M&+*HL0E36QZZ\O!S&^<A3NBO.-N?3!OIB%#G(M>S:(GK$T5<C0XJ</48T?_=
M^\?6@))<P,;%SC7>GVOY O,4=3JWO@O(%]Q:D5'-QC4*3I<TC, [BQM*:>\<
MLH8HSF.?,2GBG"V*,>>QH^\G8_->(-1:XAS3=[FA%MW@9YQD_ I>/;L,.F[W
M&BW@=W<5-0I@:&:#4KC,M-(!0JP5"2AP=@DT\ZGL[*R96 8=IW7!;>!W*H3K
M%, 0RP:E<.J$ZUPHT&$7"F9DB1.^&,B6C^GCTGR-R>B)(J,1O'0TMU%S%Q#9
M&W$(DLPZWDDS$*C\MLB,(%+K\A&PJ+11P-39W.M"JRI;&JBS"9XL?.[\ZFY=
M18!T6%AI?@+QV44\LBR^2@+(B,,0[=,X;'@Z3=<9V?+_7.%PDV9)]J0Z 6FK
M[#IAU-Z@?NJH6=,[TXZ"*PQ/.,%AIP$@?+S-"(Z?TK*:=/C&O680,H2?Z+C+
M:M=<8VHF5J?Z#6K!)3./,*U-SP'J;CCZYY*C*7YB!R]TV33#H<LKT8=OK+#6
MAOX 99'A<U$=*NYG?2C>A$;>)16-L-O$4PJ#<84FA'TV-?(7":(>-O%N1S&P
M]$%)E-#]V548)0-5QU'MW[Q_4P4@\7:=4@2('UB0[#EF<1UU=3?9_K%8[Y/Z
MUD/UGHM&Q?'6E1%\;QM+*>^=/P- ]CEU'41E86U8"]E"0J%I@][M]H81IC9]
M$U;:KPJ>O*9(UF1N8EB9FXT9AXJ/)H/;DEY8(T*5\N8@!I0Y D!UOF]Y-000
MSM21^#QEIV?F:^H_*=#B;4'!%ZPR#E]-5UAOJ^PT76^009WL/2M-,"/=(+C"
M,0:JC-C!4JK*SKK@6KX^[W+R(1=IC-S'/ O2_GDHM9BKF%D'LHZ=93+>F6$
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
M@\QI,\Y*$0S[AJ 55DO8!?7LJ 3_1TL="".;2C-V)%2+>ZGY8T$UE2P8=AD
MJDI*L6+8G%=97J!LC1XHK:"0:D'P-MYO\T,-ME&29"^L.OQM1FZR_6.QWB?U
M/=B3O(BW?">E/-Z1)=E3]3(4K^R,[;LMTW+FU]*MX7*FQL%TC'-;))3]JUM#
MZXR@NCU4-PBF+RG*W-@Y;'MU$ 6++!RZK2X@'@\"K"ZTU2A^0+S(+MO$R>6%
M7X"0=[K=!3%AD.?D)LYW61XD\S4[\S"+GW%48K6,/(YJRFE4<H*QG8CEB';
MD/T$\$*DTS3%XAO6Q!5O Q;%U;?GYMWK<RUY?D)[3LL'GVIVI[3PL8V!H?VI
M%O2Y7[6'Z@:!D'V)Z>1CSZ]H'+,-6FKBSW&Q&>_S(MMB8L?PH8VX+:]^C('=
MRNM#6@!#X*-@B_7:>2.H=;/?1>K>M*[8G::3UW##4DIIEZFN%S1XVJ-:<%4C
MYTC3ZLHY ]6]T^]XS-)K(E'9#(I35#?$)W=U4T#<J"I[U'(AV%;;Z5+P,),Z
MB\%VJMZY>AQ>W76F8\OK3!U3D^ -145#[?)<7FF7/3?MU%V3<XA1?7;:Z(*B
MYP# ?7[.BPTFJ-,(*EL!PM#^62P[8AJU?)Z.LZ"A004,^^QP*DZ.-^<P@5#M
M<X[GZVIA&><*B_M"+HDD!]CF35<"#$VDL/JLH$)LY:<1 \**VR F_,+R^;JZ
M;2A(IFE>D/WVL"^L6B>PTW6ZDC/$G,ZJC8TB&,8-02NLQE!=Q)49'QMUU-('
MPDTZ;F_CIM CF\E39XQ3=@6H=0!GW8#C$&Z@8;T@SE(;#%\'0Q8R3]HJ0.C9
M%/JPS391B7LIN6*5;2*7!4,K T!U21\P'!JS+\96*/G\.\Z_C F.XH+]2]F5
M-!ING9@1>M=K*<7!\,F,45@DIC^ANR -RBH 0%BEJ"^K#>8,.@#J :N#-ZT"
M&';9H+2M6 V$:)I;*L3_CO Z3N,"\WUO+1=/;Q;('26#7H+EK256;8(A_9D,
MT=X4%1\2A@)(V13W^*7*OZ.AZX)D*?UGB)LHF._H4*O;,C$-<'<6=R^?IVFG
MA\+/^#(Z1\?/T"Z8WG)&8V37C[.218TJZK9_F;WM<(.C?8+GZW($FZ]O\([@
M,.81UHJEP6HWM@>I.]O5/L*H9DM[@*YW5AX)6-@D'/\XN?D\XT7"[R:K'^<W
M[%\WD\5R,I[RHYB7X=Y^NPW(VWR]C)\V1;;>Y^4X0SL23SB=Q<%CG-#HRDS#
M8UMRQLC33&W(>5PS,'AZ$G;QR-W=W6CY"^/I<OKIQ]75_);^?5)>G':X517-
MIJ/KZ6RZ@G)H>(:IS7B^PVP*FSYU+;\+BCTQ\?VDEIR6S#_>U$Y!_>'->.?[
MZ=AU+OKS_<WT83S_S$[1HR4[=;H8_0+IJIGZ3(O\*$VY9#/+\MR*Y\<VYI+J
MIQG<9OMQ+8$A_$GP=9P?C3GA'RC?QY/I3X"N$3C$7\W1RC*-NK"BM[VZTP/]
M XWJG.^WU 5#VH& =31EUW[=K^;+*9@R\<KC8$<?Y8-VB.^XXWOP:&@-54?
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
M@ZU*EAW;FE,6GF9RAZ7'-04MFCK-#('L=6LY/\8;50VBH&H1"O,K.-2P^ZS
M@TZ,*W1\^%(M?)E'E2K FJ7:0)5.31N.P7.T[)AO2AM_NXW3.-_@B)?I4+P
ME;!+@ND!MYDEEP0S5&OAB454MKL$L]WG)R8%C3P_9^3+-%V0C,UJ3?;VA+V0
M1PI82IZ.)#SRR.#UR<-D4)RB'<F>*!!P[%D&+W<T%B!QD/"J0OO=+E$7J#"K
M>6&4P0@IMQ0Z\%BF!RH<% M>T+86YQ6?\DK!T_)58X<B!FG_[CAYSQAT2+'U
MW_@__]/'/WW[ES+6B&N%\H] .KNR=+IN=<"D!**XO7*M0*\!II-;P905=0/"
M+!J5[[?[A$TFVX>'Z;]IP,3NB$RC]O%CI;GJH/],S3N>AIWUI?1F;&=I&TP/
M.+-!DE6VNGD$X'B[$KYB<-3)P\MTMT([Z'J.#XBJ?D"0]IC;+%*\AZZ(2]<C
M ]?F4_MW,"Y  NK8RA0NASZ"@_EZ1NFJ\FPM :?#CP"L,X TOX+Y_@(DP8E3
M ;873_]X<LG:\X74(<91SF]K#5C1]KL@W,0I)F\6<8VUMN,@>XA)O6'*1A4,
MXX;AE8Q83+O<R8CS79:?/CA)3ZU_"N)TGAZ*0?:G:@H95^?5E?#JHTF"@'<"
MZ%")I<_#["F-_\'6?:F*K_63=S&; !>*GMTRW<0B\C^Q8*1F59'G:>G/.@9I
M.6"GZ?@TH<47'HB[__V8.LK2LSGP,\45;#^JP/QZV07E%O5.NC4ZI;3+N,$
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
MUHN[O;Y.#[I[DYU<UCN]+ &J;L *#DHLR7MROT"E'A"?+$\IG;^DF.2;>+?
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
M@I= S]XT:?!G5O?.R>,Q]YE*1:\.LBAFT0%LJLZ+#2:CZ&_[\K29J@R.M38
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
M!+Z$/53,F8>$27%1\@$$'D6%'X=ZE5"Q-P?Q^$%H4I!6'<<AZ$6RR^HD_UQ
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
M1T=.2*M"A Z"3A+2.1!WBAF=(6(7\ S!K34<-.LXM!&1= #HF;-.UY>BSSJ
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
MJ0@TF(O@-^*Z__#\-V]&S-#WB)VJ R(O 7>**B4 ?9(2<,'(\,EW8XJI( E
M#3AG@3-4%>V OD@.>'#QGFE0]?X]8@>2%ZTOGJ&*?$"GI!A8P%BXB+!].Z^D
M;T9FMDL1#7@S5&D Z* 4 PL:PQ_TZ&.T],6^^,) 58P#AN!6@@:&Z-G:=-W[
M.'0\$@KOF<) 540#QMI6@@:&:&--@B6]Y!X#_RU:9?FG(H1S)J@B'C"B5@@J
M' '>#WGO:6Z>$/L5HY4K*@"BG@LD9,F0??^T&:L+;@8<S(O&J^(>-/&3#R@
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
M+;2T(E<4MS TO:K0-#JT>B1XW4-%C',!:!&WD\UFZ)OLT5PZK\0CO 9C5>/
M:Q>JXY4/)A*9X$!XI18[G.'@)0;KWBTM]-GA7B5CKVO1>RL-P^??(X5AX(4
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
MI3B/V:_CZ?PN>8B&@Y'!(CYZ4Z,_F$,>7=;O2$=6Y(U'40J3;4[%9<P9#WS
MQ*3@E<&LA!G3F:GL>W=T4DJA%WF)[?YV/$YU)^<(H.)%KAY^28=#"#&FL]'S
MZ1,81.RO(S\B60F_ZE-2"IWHC:GT-YTGMHC1>&YT)MW?H=W'UW!>CO>D<&*X
M$R[IS$B@QG1J<N5D*X_*QU*0Q6#4&S\9G7GW7]!NXVSG>FYCP20458TU[>6B
M6>!N8RF!>+6-+^KP3$B01.57GY^*J(OD_$R,*=5BNE/0)V97ZVD'@H)5@3L#
MU'Q0V)6*M8 _!=HX("%*T0H@@QW3B4FRE\9)*#SGO2F%5<SFX]X_.N,)R^0
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
M7\(=(02@G8RHVC00N1-%X^%=AC*.DE #WO\W22"49:'0D94#P8RA$GR6D"\
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
MY>,+<I0!8?*RV!EQR,$?']79\HOV8AW0U8C'RO"0"P7HPPYT./>"W%4 6,3
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
M2=+=^S$05AIJY6/ 1G69O:7X1+:'[[,U\,C^PO[/"]TF_<W_!5!+ 0(4 Q0
M   ( #EPK51,S\V\C ,  ' 1   *              "  0    !E>#(S+3$N
M:'1M4$L! A0#%     @ .7"M5(E!H+\."   DT0   H              ( !
MM ,  &5X,S$M,2YH=&U02P$"% ,4    "  Y<*U4-N?RV/8'   ^1   "@
M            @ 'J"P  97@S,2TR+FAT;5!+ 0(4 Q0    ( #EPK50C8E*Q
M& 0  . 1   *              "  0@4  !E>#,R+3$N:'1M4$L! A0#%
M  @ .7"M5(5Z WSVS $ E1@4  T              ( !2!@  &9O<FTQ,"UK
M82YH=&U02P$"% ,4    "  Y<*U48#AKZ=<6  ""_   $
M@ %IY0$ 9G-I+3(P,C$Q,C,Q+GAS9%!+ 0(4 Q0    ( #EPK53Q3[KC:!P
M /AG 0 4              "  6[\ 0!F<VDM,C R,3$R,S%?8V%L+GAM;%!+
M 0(4 Q0    ( #EPK52)TKZ<%D    LL!  4              "  0@9 @!F
M<VDM,C R,3$R,S%?9&5F+GAM;%!+ 0(4 Q0    ( #EPK52.:>L.TH<  #JX
M!P 4              "  5!9 @!F<VDM,C R,3$R,S%?;&%B+GAM;%!+ 0(4
M Q0    ( #EPK52EF!>(.&0  "JG!@ 4              "  53A @!F<VDM
F,C R,3$R,S%?<')E+GAM;%!+!08     "@ * &$"  "^10,    !

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